>  기사  >  데이터 베이스  >  达梦(3)如何设置归档模式

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

WBOY
WBOY원래의
2016-06-07 15:23:142090검색

达梦数据库联机备份也要设归档模式。 粗看起来好像很容易, 只要alter database archivelog;就可以了。 坑人的是光这样做,你是做不了联机备份的,要去dmarch.ini中改了,重启服务才算数. 这个dmarch.ini内容默认是空的,但在Windows下,会提供一个dmarch_ex

达梦数据库联机备份也要设归档模式。 粗看起来好像很容易, 只要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
<strong>5. 重启服务 </strong>
如果不重启,现有的运行的是用旧的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 &#39;/dmbak/dm_bak1&#39; backupinfo &#39;xiongchuanliang&#39;
	2   ;
	executed successfully
	used time: 00:00:01.115. Execute id is 3.
	SQL>

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.