mysql主从同步搭建

别来无恙 提交于 2019-12-27 02:07:59

安装mysql

yum安装依赖环境

yum -y install gcc gcc-c++ lrzsz ncurses-devel cmake

使用rz命令将mysql-5.5.22.tar.gz分别上传到主从两台虚拟机中

[root@localhost src]# rz

在这里插入图片描述
创建运行用户

[root@localhost /usr/local/src]#groupadd mysql
[root@localhost /usr/local/src]#useradd -s /sbin/nologin -M -g mysql mysql

配置并编译安装

[root@localhost src]# cd mysql-5.5.22/
[root@localhost mysql-5.5.22]# cmake -DCMAKE_INSTALL_PREFIX=/data/server/mysql -DSYSCONFDIR=/etc/ -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
[root@localhost mysql-5.5.22]# make -j4 && make install

设置数据库目录的权限并建立配置文件

[root@localhost /usr/local/src/mysql-5.5.22]#chown -R mysql:mysql /data/server/mysql/
[root@localhost /usr/local/src/mysql-5.5.22]#cp support-files/my-medium.cnf /etc/my.cnf

初始化数据库

/data/server/mysql/scripts/mysql_install_db --user=mysql --basedir=/data/server/mysql --datadir=/data/server/mysql/data/

添加系统服务

[root@localhost /usr/local/src/mysql-5.5.22]#cp support-files/mysql.server /etc/init.d/mysqld
[root@localhost /usr/local/src/mysql-5.5.22]#chmod a+x /etc/init.d/mysqld
[root@localhost /usr/local/src/mysql-5.5.22]#chkconfig --add mysqld

设置环境变量

[root@localhost mysql-5.5.22]# echo "PATH=$PATH:/data/server/mysql/bin" /etc/profile
[root@localhost mysql-5.5.22]# . /etc/profile

开启服务并做路径优化

[root@localhost /usr/local/src/mysql-5.5.22]#systemctl start mysqld
[root@localhost /usr/local/src/mysql-5.5.22]#ln -s /data/server/mysql/bin/* /usr/local/bin/

登录mysql数据库验证

mysql -u root -p

在这里插入图片描述
配置主从服务时也需要ntp服务,具体搭建方法请访问以下连接
NTP
我们准备的主mysql的ip为192.168.43.115 , 从mysql的ip为192.168.43.134

master主库配置

[mysqld]
#做以下修改
server-id =11

保存退出
新建用于主从同步的用户myslave并给予权限

mysql> grant replication slave on *.*to'myslave'@'192.168.43.134'identified by '123';
mysql> flush privileges;     #刷新授权表

查看主库状态

mysql> show master status;

在这里插入图片描述
slave从库配置

[root@localhost ~]# vim /etc/my.cnf
[mysqld]
#修改以下行
server-id =12     #不能和master的id号相同
保存退出

重启数据库并进入mysql数据库交互模式

[root@localhost ~]# /etc/init.d/mysqld restart
[root@localhost ~]# mysql -uroot -p

配置从slave从库到master主库的参数

mysql> change master to master_host='192.168.43.115',master_user='myslave',master_password='123',master_log_file='mysql-bin.000006',master_logg_pos=579;

此处与上图红框同步
在这里插入图片描述
启动从库的开关

mysql> start slave;

在这里插入图片描述
成功
接下来测试
在主库闯将一个数据库,在从库查看是否同步

mysql> create database ooo;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| cui                |
| mmm                |
| mysql              |
| nnn                |
| ooo                |
| performance_schema |
| test               |
| www                |
+--------------------+
9 rows in set (0.00 sec)

搭建成功

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!