开发者社区> 推荐码发放> 正文

Ubuntu搭建mysql主从。

简介: Ubuntu搭建mysql主从。 实验环境: Ubuntu16.04 两台,mysql 5.7 本次实例为master -slave。 1)安装mysql 在Ubuntu环境中,使用apt-get install mysql-server 安装mysql。
+关注继续查看

Ubuntu搭建mysql主从。

实验环境: Ubuntu16.04 两台,mysql 5.7

本次实例为master -slave。

1)安装mysql

在Ubuntu环境中,使用apt-get install mysql-server 安装mysql。

      *1)初次使用apt-get 需要进行升级 sudo apt-get update,

      *2)apt-get安装命令若提示报错,使用ps -A |grep apt, 查看是否有相关进程在使用。)

遇y确定,安装过程中,弹窗输入密码,两次OK确认之后,安装结束。

可以通过 sudo netstat -tap | grep mysql 发现 mysql 的socket处于 listen 则安装成功。使用mysql -u root -p 进入查看 u代表登录名,p 代表密码。

2)编辑mysqld.cnf

 修改参数配置的mysql.cnf在Ubuntu变成了mysqld.cnf,默认在是在/etc/mysql/mysqld.conf.d/mysqld.cnf)下

    (1)master 库配置

在[mysqld]下面修改以下参数,不带*为非必要参数,

*user                      = mysql 
*pid-file                  = /var/run/mysqld/mysqld.pid
*socket                  = /var/run/mysqld/mysqld.sock
*port                      = 3306
*basedir                 = /usr
*datadir                  = /var/lib/mysql
*server-id             = 1   //用来唯一的标识某个数据库实例的值,数值随意,但不可以重复 
*log_bin                = /var/log/mysql/mysql-bin.log  //开启binlog
*binlog_format          =mixed  //binlog的格式,包括mixed,statement,mixed
sync_binlog             =1 // 控制bin日志刷新到磁盘,1表示表示每次事务提交,都把binlog刷新下去(最安全,高并发会影响性能);0表示MySQL不控制binlog的刷新
binlog_do_db            = ceshi //指定binlog记录ceshi数据库,多个数据库需分行添加
binlog_do_db            = ceshi2
binlog_ignore_db        = mysql  //指定binlog记录忽略的mysql数据库。

特别注意 bind-address 默认为本地地址,如果需要远程访问,则需要修改指定为从库的地址,或者直接注释掉-.-,否则后面从库同步的时候会报错,提示无法连接 (╥﹏╥)都是泪。

     

配置完成后,重启mysql 。进入后 执行 show master status \G;显示以下信息

mysql> show master status \G;                                                  

*************************** 1. row ***************************
             File: mysql-bin.000001
         Position: 712
     Binlog_Do_DB: ceshi,ceshi2
 Binlog_Ignore_DB: mysql
Executed_Gtid_Set: 
1 row in set (0.01 sec)

记下file和position值,后面从库需要,

(2)slave 端的配置

同样在[mysqld]下面

*server-id               = 2 
log_bin                 = mysql-bin
replicate_do_db         = ceshi
replicate_do_db         = ceshi2
replicate_ignore_db     = mysql

重启从库。

3 )在master 添加主从同步的账号,并授权

mysql> create user repl;
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'从库ip地址' IDENTIFIED BY '密码'; // 加粗部分修改为自己的参数。
mysql> flush privileges;

4)在slave库中执行

        mysql>change master to master_host='主库ip地址',master_port=3306,master_user='repl',master_password='密码',master_log_file='mysql-bin.000001',master_log_pos=712;  

file 及pos值 即上文主库的相应值。

mysql>start slave;

mysql> show slave status \G;查看主从库状态。

如图,表示主从正常。

5)测试下。在主库建立表,数据。看从库是否同步过去。

 原文地址https://blog.csdn.net/igxuyr_/article/details/81186969

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
ubuntu安装mysql
ubuntu安装mysql
314 0
如何在 Ubuntu 20.04 上安装 MySQL
MySQL是最流行的开源关系数据库管理系统。它速度快,容易使用,容易扩展,并且流行的LAMP和LEMP的一部分。 这篇指南讲解了如何在 Ubuntu 20.04上安装和保护 MySQL。 一、前提条件 确保你以 sudo 用户身份登录 二、在 Ubuntu 上安装 MySQL 在写作这篇文章的时候,Ubuntu 源仓库中最新的 MySQL 版本号是 MySQL 8.0。
34353 0
如何在Ubuntu14.04中安装mysql
接触过MySQL的小伙伴们都知道,在Windows下安装MySQL是一件让人十分头大的事情,但是在Ubuntu等其他Linux系统中安装MySQL就简单很多了,具体的教程如下。
1443 0
Ubuntu安装MySQL
原文: Ubuntu安装MySQL 一、验证原有主机是否已安装MySQL:     这里主要是运行sudo netstat -tap | grep mysql命令查看是否有MySQL监听的端口: $ netstat -tap | grep my...
2834 0
ubuntu下安装mysql
  现在的软件越来越好安装,尤其是在ubuntu下安装软件,更是没有技巧,只需要在联网的情况下使用apt-get inatll 即可。在决定安装mysql之前,要先确定系统是否已经安装mysql。如下图:        由此可以看出系统中并没有安装mysql.下面执行sudo apt-get install mysql-server my-client进行安装。下图:  
1289 0
+关注
推荐码发放
阿里云优惠码阿里云推荐券bieryun.com
文章
问答
文章排行榜
最热
最新
相关电子书
更多
让 MySQL 原生分布式触手可及
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载