两台主机
Ubuntu 16.04 TLS系统
部署MariaDB前的环境准备工作。1)主机1:安装Ubuntu 16.04 TLS系统,部署MariaDB主节点,IP地址为 192.168.122.12)主机2:安装Ubuntu 16.04 TLS系统,部署MariaDB从节点,IP地址为 192.168.122.1353)确保电脑可连接互联网
采用在线安装的方式分别在主节点和从节点上安装MariaDB。# apt-get install mariadb-server python-pymysql
分别在主节点、从节点上验证MariaDB的数据库服务是否正常使用mysql命令登陆本地服务,登陆成功表示MariaDB数据库服务安装正确#mysql -uroot -p
配置MariaDB主节点1)修改配置文件:/etc/mysql/mariadb.conf.d/50-server.cnf2)将绑定的IP地址修改为bind-address = 192.168.122.13)设置主节点服务ID,打开事务配置和bin-logserver-id = 1log_bin = /var/log/mysql/mysql-bin.logsync_binlog = 1autocommit = offinnodb_support_xa = 1
配置MariaDB从节点1)修改配置文件:/etc/mysql/mariadb.conf.d/50-server.cnf2)将绑定的IP地址修改为bind-address = 192.168.122.1353)设置主节点服务ID,打开只读和relay-logserver-id = 2read_only = onrelay_log =relay-bin
在MariaDB主几点上,创建一个数据库用户repuser,用于从节点的复制同步。使用root用户登陆MariaDB:MariaDB[(None)]>grant replication slave,replication client on *.* to repuser@'%' identified by 'repuser';刷新用户权限MariaDB[(None)]>flush privileges;
在MariaDB主节点上配置同步策略1)使用root用户登陆MariaDB主节点服务,并查看主节点的状态MariaDB[(None)]>show master status;这里需要记下bin-log的文件和position位置,如:File = mysql-bin.000003 , position = 11542) 设置MariaDB主节点为主状态MariaDB[(None)]>change master to master_host='192.168.122.1',master_user='repuser',master_password='repuser',master_log_file='mysql-bin.000003',master_log_position=1154;
启动MariaDB从节点的I/O线程任务1)使用root用户登陆从节点MariaDB,使用start slave启动从节点的I/O线程MariaDB[(None)]>start slave;如果启动出现ERROR 1201的错误,则需要将从节点MariaDB数据库数据存放目录下的master.info和relay-log.info文件删除后再用start slave命令启动I/O线程服务
测试MariaDB数据库主从配置是否正常工作1)在主节点上创建一个tiger的数据库,在tiger的数据库上创建一个tiger的表2)在主节点的tiger数据库的tiger表上插入记录如:insert into tiger(id,name) values(1001,'menghu');3)登录MariaDB从节点查看tiger数据库和tiger表以及记录是否同步过来