搭建mysql主从复制架构

一、安装mysql(在一台服务器上开不同的端口3306/3307)
1.先安装一个mysql服务并启动,
复制一份新的mysql安装包至/usr/local/mysql3307并命名为mysql3307

cd /usr/local/mysql3307 mkdir data
cp /usr/local/mysql3307/support-files/my-defults.cnf /usr/local/mysql3307/my.cnf

在my.cnf中加入basedir和datadir的路径 basedir=/usr/local/mysql3307 datadir=/usr/local/mysql3307/data

安装数据库
./bin/mysqld --user=mysql --basedir=/usr/local/mysql3307 --datadir=/usr/local/mysql3307/data &

初始化启动服务
cp /usr/local/mysql3307/support-files/mysql.server /etc/init.d/mysql3307

修改mysql3307 vim/etc/init.d/mysql3307
1)找到以下文件进行添加
basedir=/usr/local/mysql3307
datadir=/usr/local/mysql3307/data
conf=/usr/local/mysql3307/my.cnf
2)修改以下参数
把bindir/mysqld_safe --datadir=datadir --pid-file=server_pid_file $other_args >/dev/null 2>&1&替换为:
KaTeX parse error: Expected 'EOF', got '&' at position 133: …s >/dev/null 2>&̲1 & 3)把下面这句注释掉(…print_defaults $extra_args mysqld server mysql_server mysql.server`
4).保存退出并添加服务:
chkconfig --add /etc/init.d/mysql3307

分别启动2个mysql服务
/etc/init.d/mysqld start
/etc/init.d/mysql3307 start

登录数据库方式
mysql -uroot -p -S /usr/local/mysql/tmp/mysql.sock
mysql -uroot -p -S /usr/local/mysql3307/tmp/mysql-3307.sock
二、配置主备参数
修改第一个服务的参数
vim /etc/my.conf
搭建mysql主从复制架构
修改第二个my.cnf配置文件
vim /usr/local/mysql3307/my.cnf
搭建mysql主从复制架构

三、在主库创建用户并授权slave
登录主库
GRANT REPLICATION SLAVE ON . to ‘repl’@’%’ identified by ‘123456’;
show master status\G; 记录binlog文件和position位置。

登录从库
change master to master_host=‘localhost’,master_user=‘repl’,master_password=‘123456’,master_port=3306,master_log_file=‘mysql-bin.000004’,master_log_pos=437;
开启从服务器复制功能 start slave;
检查从服务器复制功能
搭建mysql主从复制架构
最后进行主从数据库校验,在主库建表插入数据,再登录从库观察有没有