达梦(3)如何设置归档模式

达梦数据库联机备份也要设归档模式。 粗看起来好像很容易, 只要alter database archivelog;就可以了。 坑人的是光这样做,你是做不了联机备份的,要去dmarch.ini中改了,重启服务才算数. 这个dmarch.ini内容默认是空的,但在Windows下,会提供一个dmarch_example.ini文件来做例子。Linux下则没有,所以搞达梦,先弄Windows再弄Linux才明智。Windows版的明显比Linux做得完善,当然性能就不清楚有差异没。


具体的设置归档模式的步骤如下:
1. 查看现有状态
Connected to: DM 7.1.2.215
SQL> select arch_mode from v$database;


LINEID     ARCH_MODE
---------- ---------
1          N        


used time: 1.709(ms). Execute id is 512.
2. 生成归档目录
mkdir /opt/dmdbms/data/DMSERVER/arch


3.  到数据库所在目录下,在空白的dmarch.ini  中新增这些参数
[ARCHIVE_LOCAL1]
ARCH_TYPE		 = LOCAL
ARCH_DEST		 = /opt/dmdbms/data/DMSERVER/arch
ARCH_FILE_SIZE	 	 = 128
ARCH_SPACE_LIMIT	 = 0

4. 检查 dm.ini,让它知道dmarch.ini 生效了。
   a. cp dm.ini dm_bk.ini
   b.
    更改方法一: 
    vi dm.ini
    可将ARCH_INI 对应的参数改为 1 ,即可启用

      更改方法二: 
	    SQL>alter database mount;
		executed successfully
		used time: 545.290(ms). Execute id is 0.
		SQL>alter database archivelog;
		executed successfully
		used time: 2.191(ms). Execute id is 0.
		SQL>alter database open;
		executed successfully
		used time: 523.332(ms). Execute id is 0.
		SQL>select arch_mode from v$database;


		LINEID     ARCH_MODE
		---------- ---------
		1          Y        


		used time: 1.360(ms). Execute id is 513.
		SQL>

	#configuration file
                MAL_INI  =  0                    #dmmal.ini
                ARCH_INI                        =  1                    #dmarch.ini
                REP_INI                         =  0                    #dmrep.ini
                LLOG_INI                        =  0                    #dmllog.ini
                TIMER_INI                       =  0                    #dmtimer.ini
                MPP_INI                         =  0                    #dmmpp.ini


5. 重启服务  
   如果不重启,现有的运行的是用旧的dm.ini中的参数,即归档目录等相关设置实际上并没生效。

  重启 :
Linux下:
  1. 如果是用下面这个命令启动的,去crlt+c 或exit 即退出
  ./dmserver /opt/dmdbms/data/DMSERVER/dm.ini

  ./dmserver /opt/dmdbms/data/DMSERVER/dm.ini -noconsole


Windows下: 

在这里重启


6. 检查设置是否真的成功了。
   做一个联机备份来看是否可以备份成功。
   backup database  full to  dm_bak1 bakfile '/dmbak/dm_bak1' backupinfo 'xiongchuanliang' ;
	SQL>backup database  full to  dm_bak1 bakfile '/dmbak/dm_bak1' backupinfo 'xiongchuanliang'
	2   ;
	executed successfully
	used time: 00:00:01.115. Execute id is 3.
	SQL>


达梦的文档老实说,真不给力。 上面这些步骤,反复查资料和尝试才弄出来,很费力。


终于尝试出第二种方法了:

设置归档模式:

alter database mount;
-- 配置归档参数,本质相当于更改 dmarch.ini 文件
-- 具体查 <<DM_SQL>> p59页
alter database add archivelog 'DEST=C:\dmdbms\data\DAMENG\arc,TYPE=local,FILE_SIZE=128,space_limit=1024';
--将数据库设为归档模式
alter database archivelog;
alter database open;


-- DEST:
	归档文件存放目录(本地/远程), 如果所指向的本地目录不存在会自动创建.
-- TYPE=归档类型,  :
	 远程实时归档(REALTIME)
	 远程异步归档(ASYNC)
	 远程同步归档(SYNC)
	 本地归档(LOCAL)
	 MPP远程归档(MARCH)
-- FILE_SIZE=归档文件大小,space_limit=空间大小限制
取消归档模式:

alter database mount;
alter database noarchivelog;
alter database open;

这种方法相对方便很多,不用手工去设置那些ini文件了.


第三种方法:
  使用图形界面方式更改数据库归档模式

1.  运行DM管理工具并连接
2.  在”LOCALHOST(SYSDBA)节点,点右键,选择管理服务器
3.  将数据库状态从”打开”更改成”配置”,再点击”转换”按纽
4.  在归档配置下,选择”归档(R)” 再点”添加”,输入”归档目标”一栏的路径
5.  再将系统状态从”配置” 改为”打开” 点击”转换”按纽 即完成数据库归档模式的修改


MAIL: xcl_168@aliyun.com

Blog: http://blog.csdn.net/xcl168






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值