【数据库】Kingbase金仓数据库工程维护简明手册
1. 導出:##
方法一:通過sysmodel界面工具導出
方法二:通過命令行導出
導出全庫:
導出全庫(排除歷史表):
sys_dump --host=localhost --port=54321 -U smartsys -W****** --encoding=UNICODE --schema=smartsys --format=c -T scada_event --file=D:/tmp/kdb_test_20170503.dmp2. 導入:##
方法一:通過sysmodel界面工具導入
方法二:通過命令行導入
導入全庫:
【注意】上述命令行導入過程會自動清除原先的數據庫。
3. 執行升級腳本:##
現場數據庫需要升級時,執行升級腳本是一個常見的辦法。腳本通常是一個后綴名為sql的文件(例如upgrade.sql)。有兩種方式可以執行。
方法一:使用數據庫自帶圖形界面工具執行。
方法二:使用isql命令行執行。
isql -Usmartsys -W****** -h127.0.0.1 -p54321 -dsmartsys -fupgrade.sql【注意】
一般的數據庫管理語句(DML語句,包含select,insert,update,delete等)都可以在一行內結束并以分號結尾。但是部分數據庫描述語句(DDL語句,包含create,alter,drop等)或由begin-end包住的匿名塊,往往無法在一行內結束。以下面的函數創建腳本為例:
如果在查詢分析器中,可以直接執行,但是在isql中直接執行會報錯,必須在其開頭和結尾處增加“塊標簽”。如下:
\set SQLTERM / create or replace function test_f1() returns void asa_var int; beginselect 1 into a_var; end; / \set SQLTERM ;其中:
“\set SQLTERM /”是塊起始標簽;
“/”是塊執行標簽;
“\set SQLTERM ;”是塊結束標簽(分號前必須要有一個空格)。
【問題是】:帶“塊標簽”的腳本不能在查詢分析器中執行,不帶“塊標簽”的腳本不能在isql中執行。
所以所有發往現場的升級腳本統一不帶“塊標簽”,如果現場希望在isql中執行升級腳本,請在***每一個***塊或匿名塊的前面***自行***添加“起始標簽”,并且在***每一個***塊或匿名塊的后面***自行***添加“執行標簽”和“結束標簽”。或者指明請研發人員代為添加。
總結
以上是生活随笔為你收集整理的【数据库】Kingbase金仓数据库工程维护简明手册的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 部队打背包鞋子怎么放
- 下一篇: 达梦数据库中服务器日志的开关