目录
1. 数据库导入和导出概念
2. 数据库导出
3. 数据库导入
【参考资料】
数据库导入:把dmp格式文件从本地导入到数据库服务器中。
数据库导出:把数据库服务器中的数据导出到本地生成.dmp格式文件。
数据库导出命令为exp。exp支持完全模式、用户模式和表模式三种导出功能。
命令格式:
exp [OPTION]...
[OPTION]: KEYWORD=value或者KEYWORD=( value1,value2,…,valueN)
参数选项:
连接参数
USERID 参数user/pwd@servicesname形式指明了连接到数据库的参数
例: [USERID = ] user/pwd@servicesname
servicename 是服务名,具体配置方法参见 手册文档
导出模式参数
指定导出的用户名(模式名),可导出多个模式;如果选用了该模式,则无法和表模式、全量模式共用。
例:
OWNER=public 导出 public模式数据
OWNER=”(kingbase,public)” 导出 kingbase、public两个模式的数据
指明了需要导出的表名,可以导出多个表;其中表名可以写成正则表达式的形式,导出时会做正则匹配,将匹配到的表都导出;如果选用了该模式,则无法和用户模式、全量模式共用。
例:tables=public.t1,public.t2
默认是 y
ROWS=n时,只导出数据库对象的定义,不导出具体数据,不能和 QUERY 参数共用。
ROWS=y时,使用COPY 导出。
全量导出模式,如果选用了该模式,则无法和表模式、用户模式共用。默认值为 n。
指定导出的 dmp 文件名,可以带路径,不指定路径即在当前路径下生成 dmp 文件, 注意 exp 程序只能导出数据库到一个文件中。该参数为必须项。
指定包含exp参数的文件名,exp程序会读取该文件并加载里面的参数。
指定日志文件名,exp程序会将所有日志输出写入到该文件中。
该参数仅在表模式下有效,exp 会导出 QUERY 参数指定的 where 条件限定的表的子集。该参数只能配置一个,若配置多个 QUERY 参数,那么只有最后一个 QUERY参数生效。
指示 exp程序是否导出约束,默认值为 y。若设为 y,普通表的主键约束会变为非空约束。
指示 exp程序是否导出索引,默认值为 y。
指示 exp程序是否导出触发器,默认值为 y。
例:完全模式导出
./bin/exp XYZ/xyz@kingbasefile=xyz.dmp FULL=y FULL=y
数据库导入命令为imp
命令格式:
imp [OPTION]...
[OPTION]: KEYWORD=value或者KEYWORD=( value1,value2,…,valueN)
参数选项:
连接参数
同导出参数
导入参数
指定了 imp要导入的模式数据,必须与 TOUSER参数一起使用形成 imp 的用户模式导入方式。
FROMUSER 的模式个数必须与 TOUSER 的模式个数一致;或者 FROMUSER 模式有多个,TOUSER模式只有一个(即多个模式恢复到一个模式中)。FROMUSER、TOUSER形成的用户模式,不可以和其他模式(表模式、全量模式)一起使用。
指示 imp 程序要导入的表名。
指示 imp 程序是否执行表数据的插入操作,默认值为 y。
指示 imp 程序导入完整的数据库 dmp文件,默认值为 n。该全量模式不能和其他模式共用。
指示 imp 程序导入过程中出错时的行为,是忽略错误继续执行导入,还是遇到错误直接退出,默认值为 n。
指示 imp 程序要导入的dmp 文件的文件名,该参数为必须项。
与exp的PARFILE参数完全一致。
与exp的LOG 参数完全一致。
指示 imp 程序先删掉数据库对象,再执行导入操作,默认值为 n。
指示 imp 程序只导入视图对象,默认值为n。
指示 imp 程序在导入的最后阶段先删掉所有视图,再重新创建它们,默认值为 n。
例:完全模式导入
./bin/imp XYZ/xyz@kingbase file=xyz.dmp full=y
《[高可用]兼容Oracle exp/imp的导出导入工具手册》