centos7 安装mysql_「MySQL」CentOS7 下安装及搭建主从复制

本文详细指导了在CentOS 7环境中安装MySQL 1.0,包括设置初始密码、启用主从复制。讲解了如何授权192.168.243.132为133的从库,配置binlog,创建数据库,并完成主从同步。最后介绍了如何搭建MySQL主从互为复制。关键步骤包括修改密码、设置binlog、授权和启动同步。
摘要由CSDN通过智能技术生成

一篇文章,教你搞定 MySQL 主从复制。

CentOS7 下安装 MySQL

1,wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm2,rpm -ivh mysql-community-release-el7-5.noarch.rpm3,yum install mysql-community-server4,service mysqld restart(此为重启MySQL服务命令)5,mysql -uroot -p(此为进入MySQL命令)

至此,就算安装完毕。刚安装上 MySQL 时,是没有密码的,所以运行第 5 个命令之后,直接回车,就能进入到 MySQL 界面,如图,即表示成功

7304d2f7393a65c9893dc15a05a27d11.png

MySQL 修改密码

没有密码就能进入 MySQL ,安全性肯定是不能保证的,所以接下来介绍一下,如何修改密码。运行以下命令即可(这里以将密码改为 root 为例):

use mysql;update user set password=password("root") where user='root';flush privileges;exit;

检测密码是否成功,重新进入 MySQL :

mysql -uroot -p

输入root之后,能看到如下界面,即为成功:

71c8fe472a973d571ef55cf8d83470f0.png

MySQL搭建主从复制

写在前面:搭建主从复制的前提是,都安装好了 MySQL 。这篇文章以 192.168.243.133 为主,192.168.243.132 为从为例,来演示搭建过程。同时请注意,MySQL 密码为 root 1,133 为主,132 为从,从 133 上面,进入 MySQL 给 132 授权:

grant replication slave on *.* to 'root'@'192.168.243.132' identified by 'root';
参数说明:用户名:root密码:root意为:允许192.168.243.132使用用户名为root,密码为root访问133

成功效果如图:

9e4d70499955460c1420df1a7ec66764.png

2,开启 133 的 binarylog MySQL Binary Log 也就是常说的 bin-log ,是 mysql 执行改动产生的二进制日志文件,其主要作用有两个:

  • 数据恢复
  • 主从数据库。用于 slave 端执行增删改,保持与 master 同步。
编辑my.cnf这个配置文件:vi /etc/my.cnf将以下内容保存至该配置文件中:datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sockserver-id=1log-bin=mysql-binexpire_logs_days= 7max_binlog_size= 100m                       //binlog每个日志文件大小binlog_cache_size= 4m                        //binlog缓存大小max_binlog_cache_size= 512m                     //最大binlog缓存大小binlog-do-db=401_testlower_case_table_names=1

具体如图:

69adfabdca4068ff734a144909db92c2.png

进入 mysql ,查看 binary 是否开启成功:

5fdb262a7fc05ef7d0f17fe869e0a7b9.png

3,在 133 和 132 上面分别创建数据库。此处以 401_test (如果数据库和我的不同,则主从的 my.cnf 上面相对应的数据库名称都要更改)为例

创建数据库:create database 401_test;

4,编辑 132 的 my.cnf 文件:

编辑my.cnf配置文件:vi /etc/my.cnf将以下内容保存至该配置文件中:datadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.socklog-bin=mysql-binbinlog_format=mixedserver-id=2replicate-do-db=401_test

与 133 稍微有些不同,请注意。效果如图:

30157ebfde395d33048aa48ff239a514.png

5,查看 133 的 binary 日志位置,这在后续配置 132 时会用到。 连接 MySQL ,使用命令查看 binary :

show master statusG
9d7de1bc548a0bff195a0202e14a31cd.png
具体解析:File:日志名称Position:日志偏移量Binlog_Do_DB:记录日志的库

6,开启 132 的同步: 在 132 上面运行以下命令:

CHANGE MASTER TO    -> MASTER_HOST='192.168.243.133',    -> MASTER_USER='root',    -> MASTER_PASSWORD='root',    -> MASTER_LOG_FILE='mysql-bin.000002',    -> MASTER_LOG_POS=120;

具体如图:

173633b72d380cc50c2019707627bd20.png
HOST:主节点ipUSER: 133 授权给 132 的用户名PASSWORD:授权给 132 的密码MASTER_LOG_FILE: 133 的日志名称MASTER_LOG_POS:日志偏移量,需要和 133 的一样如果忘记了,请回看第 5 步

7,查看 132 的 slave 线程是否开启:

show slave statusG
69440d7f8cc65219542cac9eac5f6e0b.png

Slave_IO_Running为读取master的binaryLog的线程 Slave_SQL_Running为执行SQL的线程 这两个线程必须都为YES才可以实现主从复制 至此主从复制就搭建完了。

MySQL搭建互为主从

在以上配置的基础之上,将 132 作为 master , 133 作为 slave 进行再次配置。 1,在 132 上面连接 MySQL 之后,为 133 授权

grant replication slave on *.* to 'root'@'192.168.243.133' identified by 'root';

2,查看 132 的 binarylog

show master status;
79f3368bab9dda8dcbdb31b3f94eea02.png

3,开启 133 的同步(这里的步骤和 132 配置相同,我就不在这里展示了,如果忘记了,可以往上面再翻翻看) 4,查看 133 slave 的状态:

show slave statusG;
c5526ce6f2586068c5c6826e0c1dce46.png

可能出现的错误:

ed91f09716b384f9e1cf0b9fb78b146a.png

解决办法: 出现上图的错误就先将 slave 停掉,再操作一遍,使用命令: STOP SLAVE ,(此处命令必须为大写) 开启完同步之后需要打开 slave ,使用命令: START SLAVE (此处命令必须为大写)。 至此,搭建互为主从复制结束。

常用到的命令

在这个过程中有几个命令是常用到的,来总结一下(#后面为注释内容):

进入 mysql :mysql -uroot -p重启 mysql :systemctl restart mysql或service mysqld restart查看 slave 线程:show slave statusGmysql 授权命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root';#参数说明:#第一个 root 是 mysql 的用户名#第二个 root 是 mysql 的密码# %表示所有机器都可以通过用户名 root ,密码 root 访问该 mysqlflush privileges ;  #使修改生效

感谢您的阅读。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值