达梦数据库数据数据守护,主、从dm.ini 自动配置脚本
脚本
脚本在python 3.8 运行没有问题
如果报没有 configparser 模块,就
pip install configparser
一下即可。
import configparser
def set_primary():
# 创建管理对象
conf = configparser.ConfigParser()
# 设置 dm.ini
fini = r"D:\达梦考试\dcp\dm group\primary\dm.ini"
conf.read(fini, encoding="utf-8") # python3
conf.set("ALL", "INSTANCE_NAME" ,"PRIMARY")
conf.set("ALL", "PORT_NUM" ,"5236" )
conf.set("ALL", "DW_INACTIVE_INTERVAL","60" )
conf.set("ALL", "ALTER_MODE_STATUS" ,"0" )
conf.set("ALL", "ENABLE_OFFLINE_TS" ,"2" )
conf.set("ALL", "MAL_INI" ,"1" )
conf.set("ALL", "ARCH_INI" ,"1" )
conf.set("ALL", "RLOG_SEND_APPLY_MON" ,"64" )
conf.write(open(fini, "w",encoding="utf-8") )
def set_standby():
# 创建管理对象
conf = configparser.ConfigParser()
# 设置 dm.ini
fini = r"D:\达梦考试\dcp\dm group\standby\dm.ini"
conf.read(fini, encoding="utf-8") # python3
conf.set("ALL", "INSTANCE_NAME" , "STANDBY")
conf.set("ALL", "PORT_NUM" , "5236" )
conf.set("ALL", "DW_INACTIVE_INTERVAL", "60" )
conf.set("ALL", "ALTER_MODE_STATUS" , "0" )
conf.set("ALL", "ENABLE_OFFLINE_TS" , "2" )
conf.set("ALL", "MAL_INI" , "1" )
conf.set("ALL", "ARCH_INI" , "1" )
conf.set("ALL", "RLOG_SEND_APPLY_MON" , "64" )
conf.write(open(fini, "w",encoding="utf-8") )
set_primary()
set_standby()
dm.ini 本身没有 section ,运行会报错,自己在dm.ini最前面加一行 “[ALL]”,运行完了再把这个 “[ALL]” 删掉即可。
应付考试匆忙写成。比较粗糙,路径什么的都没做成参数,见谅。
看到dm.ini密密麻麻的参数就脑子发胀,比较反人类,现在都讲究自动化不是?
希望这个能给大家带来启发。