数据库:mariadb5.5
主:192.168.100.21
从:192.168.100.22
做主从其实很简单,分为以下几步:
一,修改配置信息
主库上的配置文件
vim /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql #存放数据的数据目录
socket=/var/lib/mysql/mysql.sock # 套接字目录,存放套接字的
server-id = 21 #每个主机都得有个唯一的server-id
log-bin = mysql-bin binlog-do-db = jira # 指定要同步的数据库
binlog-ignore-db = mysql # 忽略的数据库,注意单词ignore(忽略)
binlog-ignore-db = information_schema #这都是忽略的
binlog-ignore-db = performance_schema # 忽略的
然后进到数据库
mysql -uroot -p
创建同步的账号
grant replication slave on *.* to 'cp3'@'%' identified by '123456';
刷新权限
flush privileges;
锁库,避免表结构被破坏
flush tables with read lock;
备份数据库
```bash
mysqldump --database jira > jira.sql -p
再进数据库解锁
unlock tables;
将数据传到从库主机
scp ./jira.sql root@192.168.100.22/root/
更改从库配置文件
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
server-id = 22
log-bin = mysql-bin
replicate-do-db = jira
replicate-ignore-db = mysql,information_schema,performance_schema
slave_skip_errors = all
mysql -uroot -p
导入数据库
soucre /root/jira.sql
查看主库的master status
show master status;
暂停slave
stop slave
配置主从
change master to master_host='192.168.100.21',master_user='cp3',master_password='123456',master_log_file='mysql-bin.000014',master_log_pos=461;
开启slave
start slave
查看同步状态
show slave status\G
就搞定了。