人大金仓数据库逻辑备份与恢复命令
人大金仓数据库逻辑备份与恢复命令
- 备份命令
- 备份命令
- 1、导出sql格式
- 2、导出dmp格式(二进制格式):
- 备份恢复命令
- copy一个表
- 命令行登陆数据库方式:
备份命令
备份命令
1、导出sql格式
1)备份整库:
sys_dump -U 用户名 -d 数据库名 -F p -f 导出sql文件路径 > dc.log 2>&1
例:sys_dump -Usystem -dtest -F p -f test.sql > dc.log 2>&1
2)备份单表:(-t可以写多个备份多个表,如-t public.t1 -t public.t2…)
sys_dump -U 用户名 -d 数据库名 -t 模式名.表名 -F p -f 导出sql文件路径 > dc.log 2>&1
例:sys_dump -Usystem -dtest -t public.table_test -F p -f test.sql > dc.log 2>&1
3)备份单个模式:
sys_dump -U 用户名 -d 数据库名 -n模式名 -F p -f 导出sql文件路径 > dc.log 2>&1
例:sys_dump -Usystem -dtest -ntest_schema -F p -f test.sql > dc.log 2>&1
2、导出dmp格式(二进制格式):
1)备份整库:
sys_dump -U 用户名 -d 数据库名 -F c -f 导出dmp文件路径 > dc.log 2>&1
例:sys_dump -Usystem -dtest -F c -f test.sql > dc.log 2>&1
2)备份单表:(-t可以写多个备份多个表,如-t public.t1 -t public.t2…)
sys_dump -U 用户名 -d 数据库名 -t 模式名.表名 -F c -f 导出sql文件路径 > dc.log 2>&1
例:sys_dump -Usystem -dtest -t public.table_test -F c -f test.sql > dc.log 2>&1
3)备份单个模式:
sys_dump -U 用户名 -d 数据库名 -n模式名 -F c -f 导出dmp文件路径 > dc.log 2>&1
例:sys_dump -Usystem -dtest -ntest_schema -F c -f test.dmp > dc.log 2>&1
备份恢复命令
1)整库恢复:
sql格式:
ksql -U 用户名 -d 数据库名 -f sql文件所在路径 > dr.log 2>&1
dmp格式:
sys_restore -U 用户名 -d 数据库名 -v dmp文件所在路径 > dr.log 2>&1
2)整库备份中恢复库中某张表:
sql格式:
ksql -U 用户名 -d 数据库名 -t表所在模式名.表名 -f sql文件所在路径 > dr.log 2>&1
dmp格式:
sys_restore -U 用户名 -d 数据库名 -t表所在模式名.表名 -v dmp文件所在路径 > dr.log 2>&1
3)恢复到指定模式:
sys_restore -U 用户名 -d 数据库名 -g 源模式名 -G 目标模式名 -v dmp文件所在路径 > dr.log 2>&1
copy一个表
一、导出语句
1、导出整个表:
COPY user TO ‘/tmp/data/test.csv’ WITH csv;
2、导出指定的属性:
COPY user(name,password) TO ‘/tmp/data/test.csv’ WITH csv;
3、使用select 语句过滤数据:
COPY (select * from user) TO ‘/tmp/data/test.csv’ WITH csv;
4、指定要导出哪些字段:
COPY (select name,age from user) TO ‘/tmp/data/test.csv’ WITH csv header;
二、导入语句:
1、导入csv文件中数据到表中:
COPY user_1 FROM ‘/tmp/data/test.csv’ WITH csv;
2、如果导出的时候,指定了header属性,那么在导入的时候,也需要指定:
COPY user_1(name, age) FROM ‘/tmp/data/test.csv’ WITH csv header;
命令行登陆数据库方式:
su - kingbase 切换至kingbase用户
ksql -Usystem -d test -p 54321