千家信息网

多机配置mysql数据库的详细步骤

发表于:2024-12-04 作者:千家信息网编辑
千家信息网最后更新 2024年12月04日,下面讲讲关于多机配置mysql数据库的详细步骤,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完多机配置mysql数据库的详细步骤这篇文章你一定会有所受益。一主多从配置环境:
千家信息网最后更新 2024年12月04日多机配置mysql数据库的详细步骤

下面讲讲关于多机配置mysql数据库的详细步骤,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完多机配置mysql数据库的详细步骤这篇文章你一定会有所受益。

一主多从配置

环境:

主机A( huangzp2):172.16.115.157

主机B( huangzp3):172.16.115.100

主机C( huangzp4):172.16.115.87

说明:多台从云服务器为一台主云服务器提供备份功能;仍然主从配置;至少需要3台机器


一. 3台云服务器上安装 mysql mysql-server

yum install mysql mysql-server -y


二. 修改配置文件/etc/my.cnf,并重启

主机A(master)上:

主机B(slave)上:


主机C(slave)上:


三. 主云服务器A上,给多台从云服务器(主机B和主机C)授权replication slave

grant replication slave on *.* to 'silen'@'172.16.115.100' identified by '123456';

grant replication slave on *.* to 'silen'@'172.16.115.87' identified by '123456';


show master status;


四. 从上写入master.info信息,并开启slave,以及查看slave状态

主机B(slave)上:



主机C(slave)上:



五. 主云服务器上创建aa,查看从云服务器上也同步创建了db1库

主A:


从B:


从C:


多主一从配置

环境:

主机A( huangzp2):172.16.115.157

主机B( huangzp3):172.16.115.100

主机C( huangzp4):172.16.115.87


说明:不管是主从、主主、一直多从,如果主有多台数据库,则需要跟多的从云服务器来备份,资源开销比较大;多主一从,一台从云服务器为多台主云服务器提供备份,也存在问题,就是一台从云服务器上不能同时开两个mysql进程(mysqld_safe只能开启一个数据库进程),解决:不能用mysqld_safe,而是需要使用mysqld_multi,一台云服务器提供多个mysql进程


一. 3台机器yum install -y mysql mysql-server,并修改配置文件/etc/my.cnf

主一A:


主二B:


二. 授权给从云服务器

主一A:

grant replication slave on *.* to 'silen'@'172.16.115.87' identified by '123456';

主二B:


三. 编辑从C云服务器配置文件vim /etc/my.cnf

[mysqld_multi]

mysqld=/usr/bin/mysqld_safe

mysqladmin=/usr/bin/mysqladmin

user=root

password=123456

log=/tmp/multi.log


[mysqld157]

port=3306

datadir=/var/lib/mysqla

pid-file=/var/lib/mysqla/mysqld.pid

socket=/var/lib/mysqla/mysql.sock

user=mysql

server-id=87


[mysqld100]

port=3307

datadir=/var/lib/mysqlb

pid-file=/var/lib/mysqlb/mysqld.pid

socket=/var/lib/mysqlb/mysql.sock

user=mysql

server-id=87


说明:

  • 添加[mysqld_multi]模块,调用的还是mysqld_safe

  • mysqladmin修改密码的工具存放的位置

  • 以root身份登录

  • 定义一个日志文件

  • 添加和主一通信模块[mysql157],157数字自定命名

  • 指定端口为3306

  • 数据存放目录

  • pid文件目录

  • 套接字目录

  • 登录的用户

  • server-id

  • 除了server-id相同外(因为在不同组中,id并没有冲突),其他和主二不能相同


四. 从云服务器上,初始化mysqla和mysqlb,创建相应目录,并修改属主为mysql,用到/usr/bin/mysql_install_db

/usr/bin/mysql_install_db --datadir=/var/lib/mysqla

/usr/bin/mysql_install_db --datadir=/var/lib/mysqlb

chown -R mysql /var/lib/mysqla/

chown -R mysql /var/lib/mysqlb/


五. 启动mysql,用mysql_multi,需指定配置文件和模块

mysqld_multi --defaults-file=/etc/my.cnf start 157


mysqld_multi --defaults-file=/etc/my.cnf start 100


六. 登录mysql,需指定端口号和套接字文件

登录mysql157,并添加和主一通信的master.info,开启salve,查看状态:

mysql -P 3306 -S /var/lib/mysqla/mysql.sock



登录mysql100,并添加和主二通信的Master.info,开启salve,查看状态:

mysql -P 3307 -S /var/lib/mysqlb/mysql.sock



七. 主一和主二创建分别创建数据库db1和db2,从云服务器分别登录157、100能够显示已同步创建

主一创建db1:


主二创建db2:


从157登录查看:

mysql -P 3306 -S /var/lib/mysqla/mysql.sock


从100登录查看:

mysql -P 3307 -S /var/lib/mysqlb/mysql.sock

对于以上多机配置mysql数据库的详细步骤相关内容,大家还有什么不明白的地方吗?或者想要了解更多相关,可以继续关注我们的行业资讯板块。

0