python部署mariadb主从架构

时间:2021-07-18 03:48:24

主机部署:

import configparser import os def config_mariadb_yum(): exists = os.path.exists(/etc/yum.repos.d/mariadb.repo) if exists: print(mariadb.repo文件已经存在) yum_install_mariadb() else: config = configparser.ConfigParser() config.read(/etc/yum.repos.d/mariadb.repo, encoding=utf-8) config.add_section(mariadb) config.set(mariadb, name, MariaDB) config.set(mariadb, baseurl, http://mirrors.ustc.edu.cn/mariadb/yum/10.3/centos7-amd64/) config.set(mariadb, gpgkey, http://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB) config.set(mariadb, gpgcheck, 1) config.write(open("/etc/yum.repos.d/mariadb.repo", "w")) yum_install_mariadb() def yum_install_mariadb(): res1 = os.system(yum install MariaDB -y > /dev/null 2&>1) if res1 == 0: config = configparser.ConfigParser() config.read(/etc/my.cnf.d/server.cnf, encoding=utf-8) config.set(server,server_id,1) config.set(server,log-bin,mysql-bin) config.write(open("/etc/my.cnf.d/server.cnf", "w")) res2 = os.system(service mariadb restart) if res2 == 0: os.system(mysql_secure_installation) os.system(‘‘‘mysql -uroot -proot -e "grant replication slave on *.* to ‘slave‘@‘%‘ identified by ‘slave‘"‘‘‘) os.system("mysql -uroot -proot -e ‘show master status‘") def main(): config_mariadb_yum() if __name__ == __main__: main()

 

从机部署:

 

import configparser import os master_ip = input(master_ip:).strip() log_file = input(log_file:).strip() pos = input(pos:).strip() def config_mariadb_yum(): exists = os.path.exists(/etc/yum.repos.d/mariadb.repo) if exists: print(mariadb.repo文件已经存在) yum_install_mariadb() else: config = configparser.ConfigParser() config.read(/etc/yum.repos.d/mariadb.repo, encoding=utf-8) config.add_section(mariadb) config.set(mariadb, name, MariaDB) config.set(mariadb, baseurl, http://mirrors.ustc.edu.cn/mariadb/yum/10.3/centos7-amd64/) config.set(mariadb, gpgkey, http://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB) config.set(mariadb, gpgcheck, 1) config.write(open("/etc/yum.repos.d/mariadb.repo", "w")) yum_install_mariadb() def yum_install_mariadb(): res1 = os.system(yum install MariaDB -y > /dev/null 2&>1) if res1 == 0: config = configparser.ConfigParser() config.read(/etc/my.cnf.d/server.cnf, encoding=utf-8) config.set(server,server_id,2) config.write(open("/etc/my.cnf.d/server.cnf", "w")) res2 = os.system(service mariadb restart) if res2 == 0: os.system(mysql_secure_installation) os.system(‘‘‘mysql -uroot -proot -e "CHANGE MASTER TO MASTER_HOST=‘%s‘, MASTER_USER=‘slave‘, MASTER_PASSWORD=‘slave‘, MASTER_LOG_FILE=‘%s‘, MASTER_LOG_POS=%s"‘‘‘ % (master_ip,log_file,pos)) os.system("mysql -uroot -proot -e ‘start slave;‘") def main(): config_mariadb_yum() if __name__ == __main__: main()