1.3 清除数据库访问
当数据库在脱机时,如果报错“当前对象被占用”,说明当前数据库连接中存在联机正在访问所要还原的数据库,通过以下方式查找相关数据库连接:
isql登录数据库: ./isqlSYSDBA/SYSDBA@127.0.0.1
执行查询:
select * from v$session;
该查询会返回当前数据库中的连接信息,包含登录用户、登录的IP地址等信息,通过
这些信息可以先关闭相应的连接再进行数据库脱机操作。
在某些情况下,可能不方便关闭所有的连接,此时我们可以通过修改数据库的访问端口
号来拒绝应用对数据库的访问。修改达梦安装目录下bin/dm.ini文件,其中的PORT_NUM为数据库端口号,修改为其他值即可,如22345,重启数据库后参数生效。但是需要注意,此时访问数据库的端口后也要使用修改后的值,例如,使用isql登录数据库命令如下: ./isqlSYSDBA/SYSDBA@127.0.0.1:22345
二、 物理备份数据库 2.1.通过isql进行数据库备份
1. 以系统管理员用户登录数据库
./isqlSYSDBA/SYSDBA@127.0.0.1 @符号后为数据库的IP地址。 2. 备份数据库
SQL>BACKUP DATABASE [数据库名] FULL TO [备份文件名] ; 详细语法格式如下: BACKUP DATABASE <数据库名> [FULL|INCREMENT ] TO <备份名> [BAKFILE ‘<备份路径>’] [BACKUPINFO ‘<备份描述>’] [MAXSIZE <限制大小>] [IDENTIFIED BY <密钥>[WITH ENCRYPTION]] [COMPRESSED]; 例:BACKUP DATABASEEMS FULL TO EMS_BAK1 ;
2.2.使用达梦客户端备份
1. 以SYSDBA登录数据库,在需要备份的数据库上右击->备份
2. 填写备份名称及选择备份类型
三、 逻辑备份与还原数据库
达梦数据库的逻辑备份还原工具用于
3.1 逻辑备份工具
1. 导出单张表或多张表
./expdb[userid]/[password]@mdbtables=[table1],… file=out.dmplog=out.log 该工具到userid用户默认的数据库中去查找需要备份的表,如果涉及到跨数据库查找,需要在密码后面再添加数据库名。
./expdb[userid]/[password]/[dbname]@mdbtables=[table1],…file=out.dmplog=out.log 例:./expdb d5000/d5000@mdb tables=substation,breaker file=out.dmp 2. 导出一个用户
./expdb[userid]/[password]@mdbowner=[username] file=out.dmp
例:./expdb SYSDBA/SYSDBA/EMS@mdb owner=EMS file=out.dmp log=out.log 3. 导出整个数据库
./expdb [userid]/[password]/[dbname]@mdbfile=out.dmplog=out.log 例:./expdb SYSDBA/SYSDBA/EMS@mdb file=out.dmp log=out.log 4. 导出表结构
./expdb[userid]/[password]/[dbname]@mdbrows=n file=out.dmp log=out.log 例:./expdb SYSDBA/SYSDBA/EMS@mdb rows=n file=out.dmp log=out.log 5. 导出一张表的部分内容
DM6在2013年6月份的版本之后提供了备份一张表中部分内容的功能,即expdb
工具支持了query参数,通过该参数可以按照一定的条件导出部分数据,如下: 导出一天的历史采样数据:
./expdb HISDB/HISDB@his tables=yc_hs_500281,yc_hs_5000282 query=”where occur_time>=’2013-12-1’ and occur_time<’2013-12-2’” file=yc_hs.dmp
3.2 逻辑还原
达梦的逻辑还原工具在还原过程中是以追加的方式插入数据的,一旦出现违反唯一性约束的数据,当前表的导入立刻停止。所以在导入的过程中建议先将原表删除。
1. 导入整个DMP文件
./impdb[userid]/[password]@mdb file=out.dmplog=imp.log
2. 导入DMP文件中的部分表
./impdb [userid]/[password]@mdb tables=[table1],… file=out.dmp log=imp.log 该种导入方法要求使用的登录能够直接访问到tables参数后面的表。 例:./impdb d5000/d5000@mdb tables=substation file=out.dmp log=imp.log 3. 导入DMP文件到异名数据库中
./impdb [userid]/[password]/[目的库]@mdbignored=N file=out.dmp log=imp.log 例:将EMS库备份的文件导入到TEST数据库中
./impdb SYSDBA/SYSDBA/TEST@mdbignoredb=n file=out.dmp log=imp.log 4. 导入DMP文件到其他用户下
./impdb [userid]/[password]@mdbfromuser=user1 touser=user2 file=out.dmp log=imp.log 例:将EMS用户备份文件还原到SYSDBA用户下 ./impdb SYSDBA/SYSDBA/EMS@mdbfromuser=EMS log=imp.log
touser=SYSDBA
file=out.dmp
达梦数据库代理作业设置
代理作业主要完成达梦的自动定时备份功能,下面以添加定时备份为例,介绍添加定时备份的过程。
1. 设置代理
(1)右击【代理】,选择【属性】
(2)设置代理属性。其中【STMP服务器】和【Email地址】可随便填写,如果想在备份任务完成后得到通知可以写自己email地址,但所有选项不能为空,其中密码为SYSDBA用户密码,默认为SYSDBA。
(3) 刷性【代理】节点,显示出作业、警报、操作员等信息说明新建成功。
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库达梦数据库操作手册(4)在线全文阅读。
相关推荐: