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