日志文件及参数:
1.log_statement:设置记录哪些类型的sql,默认是none,记录错误;
ddl:数据库定义sql语句;
mod:ddl+dml;
all:所有语句。
2.log_destination:数据库服务器的消息,记录于sys_log。默认,stderr标准错误输出至屏幕;csvlog相关信息输出至csv文件;或根据操作系统输出至指定的日志;
设置值有:stderr(默认)、csvlog、syslog(linux)、eventlog(windows)
3.logging_collector:日志收集器,默认开启。可以设置为off(关闭)。
4.log_lock_waits:一个会话获得锁的等待超过deadlock_timeout时,是否产生一个日志消息,默认off。
5.log_directory:默认值是sys_log,在data目录下的sys_log中生成日志文件。
6.log_file_mode:默认值是600,设置日志文件的读写权限。
7.log_filename:日志文件的默认命名格式,kingbase-%Y-%m-%d_%H%M%S.log。
8.log_rotation_age:基于时间间隔生成新的日志文件,单位分钟;0表示禁用基于大小的方式;默认值是1440min;
9.log_rotation_size:基于日志文件大小生成新的日志文件,单位kb;0表示禁用基于大小的方式;默认是10240Kb(10M)。
10.log_truncate_on_rotation:根据logging_collector设置日志文件内容是否覆盖或追加至同名日志文件;对log_rotation_age有效;参数值为on(覆盖)或off(追加)。
===========================================================
物理备份:将数据库相关文件,如参数文件、数据文件、日志文件等,通过sys_rman等命令进行打包备份。
备份文件类型 逻辑备份:将数据库数据文件中的相关数据,通过sys_dump命令将数据逻辑导出生成sql/dmp文件。
数据库备份: 备份时数据库状态 冷备份:停止数据库相关服务,将数据库相关文件,如参数文件、数据文件、日志文件等,cp、tar等方式备份。
热备份:数据库相关服务不停止,在数据库运行状态下,运行数据库相关数据的备份,如逻辑备份等。
备份数据库的完整性 全量备份
增量备份
备份方式:
1.copy:
导出test表数据为csv格式文件:\copytest to '/home/kingbase/data/test.csv' csv;
\copy test to'/home/kingbase/data/test.txt' csv; -->test.csv和test.txt只代表文件名,并不代表文件格式!!!
如果要在文件第一行显示列名:\copy test to '/home/kingbase/data/test.csv' csv header;
导出临时表数据为csv格式文件:\copy (select * from test) to'/home/kingbase/data/test.csv' csv;
导入test表数据:create table fcj_test(liketest);-->创建和表test相同表结构的表fcj_test;
\copy fcj_test from'/home/kingbase/data/test.csv' csv;
\copy fcj_test from'/home/kingbase/data/test.txt' csv;
如果数据文件第一行是列名:\copy fcj_test from '/home/kingbase/data/test.csv' csv header;
===========================================================
2.sys_dump命令:sys_dump[option] ... [name]
解析:option:-f:输出逻辑备份目录及文件名;
-F:指定输出文件的格式:--format=c|d|t|p
p(plaintext):默认,一个纯文本的sql文件;
c(custom):一个自定义格式适合作为sys_restore使用的文件,带压缩;
d(directory):一个适合为sys_restore使用的目录及文件结构,默认带压缩支持并行;
t(tar):一个适合为sys_restore使用的tar格式的文件,不带压缩;
-n:导出指定模式的对象定义及数据;
-s:只导出指定模式的对象定义;
-j:指定导出任务的进程数,并发操作;
-t:导出指定表的定义及数据;
-T:导出模式时选择不导出指定表;
-c:导出的信息里包含删除对象的操作sql;(重复导入时先删除再创建,否则会冲突报错)
-C:导出的信息里包含删除数据库、重建数据库的操作sql;(谨慎)
--lock-wait-timeout=N:指定导出操作等待锁的超时时间;
导出test库为dmp存档文件(-Fc):sys_dump -USYSTEM -W995814 -p55555 -dTEST -f /dbdata/backup/test.csv-Fc
导出samples库为sql脚本文件(-Fp):sys_dump -USYSTEM -W995814 -p55555 -dsamples -f/dbdata/backup/samples.sql -Fp
导出test库并生成目录及文件结构(-Fd):sys_dump -USYSTEM -W995814 -p55555 -dTEST -f /dbdata/backup/test.dir-Fd
导出test库生成tar存档文件(-Ft):sys_dump -USYSTEM -W995814 -p55555 -dTEST -f /dbdata/backup/test.tar-Ft
备份数据库,但不包含表空间的ddl:sys_dump -USYSTEM -W995814 -p55555-dTEST -f /dbdata/backup/test.sql -Fp -C --no-tablespace
解析:sys_restore,使用sys_dump逻辑生成的备份文件(c、d、t)进行恢复时使用的命令;sys_restore --help。
ksql,使用sys_dump逻辑生成的备份文件(p)进行恢复时使用的命令;
导出模式scott:sys_dump -USYSTEM -W995814 -p55555-dsamples -nscott -f /dbdata/backup/test.csv -Fc
导出scott模式中的dept表:sys_dump-USYSTEM -W995814 -p55555 -dTEST -f /dbdata/backup/test.csv -Fc -nscott-t'scott.dept'
导出表时,无论指定表名还是排除表名,最好带-nschema_name参数,表名前带schenma_name.;
===========================================================
sys_dumpall命令:
解析:该命令用于将一个数据库集簇导出到sql格式的脚本文件中;
无-F(c、d、t),还原时不支持sys_restore,不支持并行,不建议用于每天备份数据;
能转存对所有数据库公用的全局对象(sys_dump不保存这些对象);
-g:只转存全局对象(角色和表空间),而不转存数据库;
-r:只转存角色,不转存数据库和表空间;
-s:只转存对象定义(模式),不转存数据;
-t:只转存表空间,不转存数据库和角色;
-v:向标准错误输出详细的对象注释以及转存文件的开始/停止时间,还有进度消息。
===========================================================