云服务器上进行MySQL主从配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了云服务器上进行MySQL主从配置相关的知识,希望对你有一定的参考价值。

配置时环境:腾讯云服务器,云服务器上的mysql5.7,未配置过主从,如环境不一致,请谨慎操作。我的公网IP是119.29.234.43,内网ip是10.104.190.222,请修改为你自己的并在下面代码包含公网IP的地方进行相应的修改。(蓝色字体是所有操作主机的命令步骤,绿色字体是操作从机的命令步骤,底部是所有命令集合)

腾讯云服务器如图所示:

技术分享

具体步骤:

1.登录云服务器(如主机,从机未安装jdk和MySQL请操作2 3 ,否请跳过),下面是控制台用户命令操作

2.安装JDK:     

sudo apt-get install openjdk-8-jdk    

y       

3.安装MySQL:    

sudo apt-get install mysql-server

    账号:   root

    密码:   root

主机配置

4.修改mysqld.cnf文件信息

cd /etc/mysql/mysql.conf.d/

sudo vim mysqld.cnf  此时打开mysqld.cnf出现大量信息

i  进入编辑模式

  一直操作向下箭头,找到信息底部白色的两行代码,这部分代码即是被注释的代码,如图:

技术分享删除#,修改binglog_do_db = db_zhanye_sm,binlog_ignore_db = mysql 。 其中db_zhanye_sm是要同步的数据库名称,操作后如下图所示

技术分享

找到bing-adress 把127.0.0.1修改为腾讯云主机内网ip 10.104.190.222,不修改会导致等下MySQL无法重启

技术分享

Esc 退出vim编辑状态 

:wq 保存修改内容,并回到控制台(第一步":"具体操作按同时按住Shift ;两个键 第二步w 第三步q 第四步回车键 )        

mysql -u root -p   打开数据库,接下来输入数据库密码

root        输入密码后进入数据库

接下来是创建一个新用户用来远程连接使用:   

在MySQL中输入此以下命令 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器。MySQL里面输入命令:CREATE USER ‘username‘@‘host‘ IDENTIFIED BY ‘password‘;

create user ‘Edward‘@‘%‘ IDENTIFIED BY ‘123‘;

 

在MySQL中操作此命令,此处是授权命令。例如:GRANT privileges ON databasename.tablename TO ‘username‘@‘host‘;privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.  例子:( GRANT SELECT, INSERT ON test.user TO ‘pig‘@‘%‘;) 

GRANT SELECT,INSERT ON db_zhanye_sm.* TO ‘Edward‘@‘%‘;

 

用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令: GRANT privileges ON databasename.tablename TO ‘username‘@‘host‘ WITH GRANT OPTION;

GRANT privileges ON db_zhanye_sm.test TO ‘Edward‘@‘%‘ WITH GRANT OPTION;

 

 

授予从机复制表权限,示例:GRANT REPLICATION SLAVE ON *.* TO ‘user‘@‘X.X.X.X‘ IDENTIFIED BY ‘password‘;

GRANT REPLICATION SLAVE ON *.* TO ‘Edward‘@‘%‘ IDENTIFIED BY ‘123‘;

exit   退出数据库操作

sudo /etc/init.d/mysql restart    重启数据库

mysql -u root -p     登录数据库,

root          

show master status;  显示信息如下图所示,注:执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化。记录File 和 Position的值并给从机使用;

                                     技术分享

从机配置:

 

          

   


以上是关于云服务器上进行MySQL主从配置的主要内容,如果未能解决你的问题,请参考以下文章

mysql 主从复制配置

Mysql Master-slave 主从配置

Linux云计算-使用 MyCat 实现 MySQL 主从读写分离

数据库主从复制配置

mysql主从同步配置

两台阿里云服务器,如何配置keepalived,mysql双主