你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
nccloud
通用版
1、数据库备份
#切换到数据库用户
su - kingbase
#将ncc2005数据库备份到当前路径,备份文件名为ncc2005.dmp ,这个是金仓压缩模式的物理备份,需要用sys_restore恢复
sys_dump -Usystem -Fc -f ncc2005.dmp ncc2005
#也可以直接生成逻辑备份,可用ksql还原
sys_dump -Usystem -f ncc2005.sql ncc2005
#对于非本机的标准端口数据库,也可以通过参数指定连接信息进行处理
sys_dump -h 数据库IP -p 端口 -U SYSTEM -W 数据库用户密码 -f 数据库备份绝对地址 要备份的数据库名称
2、数据库还原
#上传备份文件,例如上传到了/data/kingbase/,切换到数据库用户,并切换到备份文件目录
cd /data/kingbase/
#恢复数据库,如果是物理备份(备份参数带-Fc), 例如已建好ncc2005数据库和用户
sys_restore -U用户名 -d数据库 -p端口 物理备份绝对地址
#如果逻辑备份,还原到指定数据库
ksql -USYSTEM -W数据库用户密码 -d被还原的目标库(需提前建好) -p数据库端口 -f 备份文件绝对路径#扩展,如果需要指定schema 指定表,可以参考在导出时配置如下参数
模式(-n)、表(-t)、结构(-s)、数据(-a)
如果使用ksql恢复物理备份,会提示如下:
如果基于逻辑备份还原数据库,又想替换用户名(schema),如何操作?
sed -i "s/原schema/导入目标库的新schema/g" 逻辑备份文件 ,然后在进行导入即可
如下为官方资料
示例:
二进制格式:
备份全库:
sys_dump -h ip -p 端口 -U 用户 -W 密码 –F c -f 备份路径/xxx.dmp 库名
还原全库:
sys_restore -h ip -p 端口 -U 用户 -W 密码 -d 库名备份路径/xxx.dmp
sql格式:
sys_dump -h ip -p 端口 -U 用户 -W 密码-f 备份路径/xxx.sql 库名
ksql-h ip -U用户名 -W密码 -d 库名 -f备份路径/xxx.sql
全备份:
sys_dumpall -USYSTEM -W123456 -f 备份路径/xxx.sql
还原:
initdb -USYSTEM -W123456 -D data_all
ksql -USYSTEM -W123456 -d SAMPLES -f 备份路径/xxx.sql
物理备份及还原
物理备份是将实际组成数据库的操作系统文件进行拷贝的过程
1、脱机物理备份:
直接备份data
2、联机物理备份:全量、增量
备份:
使用工具:sys_rman
还原到最新时间点
还原到某个备份集
还原到某个时间点
sys_rman使用示例:
一、备份
1、配置参数
wal_level='replica'
archive_mode='on'
archive_dest='/home/kingbase/archive'
2、初始化
sys_rman init -U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data/
3、创建测试表及备份
新建表backup_full
CREATE TABLE BACKUP_FULL(ID INT);
INSERT INTO BACKUP_FULL SELECT GENERATE_SERIES(1,10000);
全量备份
sys_rman backup -b full-U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data/
新建表backup_01
CREATE TABLE BACKUP_01(ID INT);
INSERT INTO BACKUP_01 SELECT GENERATE_SERIES(1,10000);
增量备份01
sys_rman backup -b page-U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data/
sys_rman restore ID -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data2
3、基于时间点还原
mkdir data3
sys_rman restore-B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data3--time 'Recovery time'
新建表backup_02
CREATE TABLE BACKUP_02(ID INT);
INSERT INTO BACKUP_02 SELECT GENERATE_SERIES(1,10000);
增量备份02
新建表backup_03
CREATE TABLE BACKUP_03(ID INT);
INSERT INTO BACKUP_03 SELECT GENERATE_SERIES(1,10000);
增量备份03
4、查看备份集
sys_rman show -B /home/kingbase/backup/
二、还原
1、默认还原到最新时间点
mkdir data1
sys_rman restore -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data1
2、还原到某个备份集
mkdir data2
三、清理策略
1、按备份集保留
sys_rman retention purge--redundancy 1 -B /home/kingbase/backup/
——指定应保留多少完整备份清除命令
2、按时间保留
sys_rman retention purge--window 7 -B /home/kingbase/backup/
——指定可恢复的天数
一、逻辑备份脚本部署
1、mkdir /home/kingbase/scripts
2、将备份脚本backup8.sh放到scripts下
3、修改备份脚本里的参数
kdb_home="/home/kingbase/KingbaseES/V8/Server"——安装目录
kdbback_dest="/home/kingbase/backup"——备份路径
kdb_user="SYSTEM"——备份用户
kdb_pass="123456"——密码
kdb_port="54321"——端口
kdb_host="127.0.0.1"——ip
kdb_list="TEST,SAMPLES"——要备份的库名,用逗号隔开
keep_time="7"——备份保留天数
4、测试脚本
sh -x/home/kingbase/scripts/backup8.sh
5、编写定时任务
crontab -e
0 2 * * * sh /home/kingbase/scripts/backup8.sh>/dev/null 2>&1 &
——每天凌晨两点进行逻辑备份
二、全量增量备份脚本部署
2、将备份脚本rman_full.sh、rman_page.sh放到scripts下
(1)修改rman_full.sh
kdb_home="/home/v8/Kingbase/ES/V8/Server/"——安装目录
kdb_data="/home/kingbase/KingbaseES/V8/data" ——数据目录路径
keep_num="2"——保留备份集
(2)修改rman_page.sh
kdb_data="/home/kingbase/KingbaseES/V8/data"——数据目录路径
kdb_user="SYSTEM" ——备份用户
kdb_pass="123456" ——密码
kdb_port="54321" ——端口
sh -x/home/kingbase/scripts/rman_full.sh
sh -x/home/kingbase/scripts/rman_page.sh
023**6sh /home/kingbase/scripts/rman_full.sh>/dev/null 2>&1 &
023**0-5sh /home/kingbase/scripts/rman_page.sh>/dev/null 2>&1 &
——每周六晚23点进行物理全量备份,周日至周五晚23点进行物理增量备份
要回复问题请先登录或注册
6 个回复
nccloud
通用版
1、数据库备份
#切换到数据库用户
su - kingbase
#将ncc2005数据库备份到当前路径,备份文件名为ncc2005.dmp ,这个是金仓压缩模式的物理备份,需要用sys_restore恢复
sys_dump -Usystem -Fc -f ncc2005.dmp ncc2005
#也可以直接生成逻辑备份,可用ksql还原
sys_dump -Usystem -f ncc2005.sql ncc2005
#对于非本机的标准端口数据库,也可以通过参数指定连接信息进行处理
sys_dump -h 数据库IP -p 端口 -U SYSTEM -W 数据库用户密码 -f 数据库备份绝对地址 要备份的数据库名称
2、数据库还原
#上传备份文件,例如上传到了/data/kingbase/,切换到数据库用户,并切换到备份文件目录
su - kingbase
cd /data/kingbase/
#恢复数据库,如果是物理备份(备份参数带-Fc), 例如已建好ncc2005数据库和用户
sys_restore -U用户名 -d数据库 -p端口 物理备份绝对地址
#如果逻辑备份,还原到指定数据库
ksql -USYSTEM -W数据库用户密码 -d被还原的目标库(需提前建好) -p数据库端口 -f 备份文件绝对路径
#扩展,如果需要指定schema 指定表,可以参考在导出时配置如下参数
模式(-n)、表(-t)、结构(-s)、数据(-a)
nccloud
如果使用ksql恢复物理备份,会提示如下:
nccloud
如果基于逻辑备份还原数据库,又想替换用户名(schema),如何操作?
sed
-i "s/原schema/导入目标库的新schema/g" 逻辑备份文件 ,然后在进行导入即可
nccloud
如下为官方资料
示例:
二进制格式:
备份全库:
sys_dump -h ip -p 端口 -U 用户 -W 密码 –F c -f 备份路径/xxx.dmp 库名
还原全库:
sys_restore
-h ip -p 端口 -U 用户 -W 密码 -d 库名备份路径/xxx.dmp
sql格式:
备份全库:
sys_dump -h ip -p 端口 -U 用户 -W 密码-f 备份路径/xxx.sql 库名
还原全库:
ksql-h ip -U用户名 -W密码 -d 库名 -f备份路径/xxx.sql
全备份:
sys_dumpall
-USYSTEM -W123456 -f 备份路径/xxx.sql
还原:
initdb
-USYSTEM -W123456 -D data_all
ksql
-USYSTEM -W123456 -d SAMPLES -f 备份路径/xxx.sql
nccloud
物理备份及还原
物理备份是将实际组成数据库的操作系统文件进行拷贝的过程
1、脱机物理备份:
直接备份data
2、联机物理备份:全量、增量
备份:
使用工具:sys_rman
还原:
还原到最新时间点
还原到某个备份集
还原到某个时间点
sys_rman使用示例:
一、备份
1、配置参数
wal_level='replica'
archive_mode='on'
archive_dest='/home/kingbase/archive'
2、初始化
sys_rman
init -U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D
/home/kingbase/KingbaseES/V8/data/
3、创建测试表及备份
新建表backup_full
CREATE
TABLE BACKUP_FULL(ID INT);
INSERT
INTO BACKUP_FULL SELECT GENERATE_SERIES(1,10000);
全量备份
sys_rman backup -b full-U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data/
新建表backup_01
CREATE TABLE BACKUP_01(ID INT);
INSERT INTO BACKUP_01 SELECT
GENERATE_SERIES(1,10000);
增量备份01
sys_rman backup -b page-U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data/
sys_rman restore ID -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data2
3、基于时间点还原
mkdir data3
sys_rman restore-B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data3--time 'Recovery time'
新建表backup_02
CREATE TABLE BACKUP_02(ID INT);
INSERT INTO BACKUP_02 SELECT
GENERATE_SERIES(1,10000);
增量备份02
sys_rman backup -b page-U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data/
新建表backup_03
CREATE TABLE BACKUP_03(ID INT);
INSERT INTO BACKUP_03 SELECT GENERATE_SERIES(1,10000);
增量备份03
sys_rman backup -b page-U SYSTEM -W 123456 -d TEMPLATE2 -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data/
4、查看备份集
sys_rman show -B /home/kingbase/backup/
二、还原
1、默认还原到最新时间点
mkdir data1
sys_rman restore -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data1
2、还原到某个备份集
mkdir data2
sys_rman restore ID -B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data2
3、基于时间点还原
mkdir data3
sys_rman restore-B /home/kingbase/backup/ -D /home/kingbase/KingbaseES/V8/data3--time 'Recovery time'
三、清理策略
1、按备份集保留
sys_rman retention purge--redundancy 1 -B /home/kingbase/backup/
——指定应保留多少完整备份清除命令
2、按时间保留
sys_rman retention purge--window 7 -B /home/kingbase/backup/
——指定可恢复的天数
nccloud
一、逻辑备份脚本部署
1、mkdir /home/kingbase/scripts
2、将备份脚本backup8.sh放到scripts下
3、修改备份脚本里的参数
kdb_home="/home/kingbase/KingbaseES/V8/Server"——安装目录
kdbback_dest="/home/kingbase/backup"——备份路径
kdb_user="SYSTEM"——备份用户
kdb_pass="123456"——密码
kdb_port="54321"——端口
kdb_host="127.0.0.1"——ip
kdb_list="TEST,SAMPLES"——要备份的库名,用逗号隔开
keep_time="7"——备份保留天数
4、测试脚本
sh -x/home/kingbase/scripts/backup8.sh
5、编写定时任务
crontab -e
0
2 * * * sh
/home/kingbase/scripts/backup8.sh>/dev/null 2>&1 &
——每天凌晨两点进行逻辑备份
二、全量增量备份脚本部署
1、mkdir /home/kingbase/scripts
2、将备份脚本rman_full.sh、rman_page.sh放到scripts下
3、修改备份脚本里的参数
(1)修改rman_full.sh
kdb_home="/home/v8/Kingbase/ES/V8/Server/"——安装目录
kdb_data="/home/kingbase/KingbaseES/V8/data" ——数据目录路径
kdb_user="SYSTEM"——备份用户
kdb_pass="123456"——密码
kdb_port="54321"——端口
kdb_host="127.0.0.1"——ip
kdbback_dest="/home/kingbase/backup"——备份路径
keep_num="2"——保留备份集
(2)修改rman_page.sh
kdb_home="/home/v8/Kingbase/ES/V8/Server/"——安装目录
kdb_data="/home/kingbase/KingbaseES/V8/data"——数据目录路径
kdb_user="SYSTEM" ——备份用户
kdb_pass="123456" ——密码
kdb_port="54321" ——端口
kdb_host="127.0.0.1"——ip
kdbback_dest="/home/kingbase/backup"——备份路径
4、测试脚本
sh -x/home/kingbase/scripts/rman_full.sh
sh -x/home/kingbase/scripts/rman_page.sh
5、编写定时任务
crontab -e
023**6sh
/home/kingbase/scripts/rman_full.sh>/dev/null 2>&1 &
023**0-5sh
/home/kingbase/scripts/rman_page.sh>/dev/null 2>&1 &
——每周六晚23点进行物理全量备份,周日至周五晚23点进行物理增量备份