码迷,mamicode.com
首页 > 数据库 > 详细

mysql主从配置

时间:2016-06-16 18:22:56      阅读:334      评论:0      收藏:0      [点我收藏+]

标签:mysql   服务器   命名   local   

一:mysql主从配置环境

在同一台服务器中建立mysql主从

mysql-5.1.72-linux-i686-glibc23.tar.gz

二:搭建步骤

1、下载:cd /usr/local/src ;  wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.72-linux-i686-glibc23.tar.gz

2、解压:tar zxvf   mysql-5.1.40-linux-i686-icc-glibc23.tar.gz;  

 移动重命名:mv mysql-5.1.40-linux-i686-icc-glibc23   ../mysql ; cp -r ../mysql ../mysql2

  cd /usr/local/mysql/

3、复制配制文件及启动脚本:

 cp ./support-files/my-small.cnf /etc/my.cnf ;  cp /etc/my.cnf  /usr/local/mysql2/

 cp ./support-files/mysql.server /etc/init.d/mysqld ; cp /etc/init.d/mysqld  /etc/init.d/mysqld2

4、mysql 数据存放目录:  mkdir -p /data/mysql;mkdir -p /data/mysql2

新建mysql用户:useradd -s /sbin/nologin mysql

更改目录权限:chown -R mysql:mysql /data/mysql ; chown -R mysql:mysql /data/mysql2

5、修改配置文件、启动脚本

  主mysql    vim /etc/init.d/mysqld   修改 basedir  datadir 

  从mysql    vim /usr/local/mysql2/my.cnf  ; 修改port  socket  server-id(与主不同)

                   vim /etc/init.d/mysqld2  修改 basedir  datadir conf

6、mysql安装

主mysql  cd /usr/local/mysql/; ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

从mysql  cd /usr/local/mysql2/; ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql2   

7、启动主mysql:/etc/init.d/mysqld start

     修改主mysql pw : /usr/local/mysql/bin/mysqladmin -uroot password ‘1‘

     新建DB:/usr/local/mysql/bin/mysql -uroot -p1 -e ‘create database db1‘

     将mysql数据库备份:/usr/local/mysql/bin/mysqldump -uroot -p1 mysql > mysql.sql

     导入db1库中:/usr/local/mysql/bin/mysql -uroot -p1 db1 < mysql.sql

8、修改主mysql配置 vim /etc/my.cnf  新增log-bin=mysql-bin(自定义)   binlog-do-db=mysql,db1 ,重启

      

9、赋用户同步权限 grant replication slave on *.* to ‘wql‘@‘127.0.0.1‘ identified by ‘wql‘;  flush privileges;

10、从mysql新建db1 ,导入mysql.sql 入db1

/usr/local/mysql2/bin/mysqladmin -uroot password ‘2‘ -S /tmp/mysql2.sock

/usr/local/mysql2/bin/mysql -uroot -p2 -S /tmp/mysql2.sock -e ‘create database db1‘

/usr/local/mysql2/bin/mysql -uroot -p2 -S /tmp/mysql2.sock db1 < mysql.sql

11、修改从mysql配置 vim /usr/local/my.cnf log-bin=mysql-bin(自定义)   replicate-do-db=mysql,db1 ,重启

12、进入主mysql,锁表,查看状态;

flush tables with read lock;

show master status;

进入从mysql

slave stop;  

change master to master_host=‘127.0.0.1‘, master_port=3306, master_user=‘wql‘, master_password=‘wql‘, master_log_file=‘mysql-bin.000002‘, master_log_pos=106;

slave start;

show slave status;

13、测试效果,重启主从mysql

进入主mysql的db1数据库中,删除一table后,进从mysql查看,此table是否存在;是不存在,则主从配置成功,如仍在,则主从配置不成功。

三:问题

报以下错误:

1、[root@linux34 /]# service mysqld start

Starting MySQL. ERROR! Manager of pid-file quit without updating file.

在主mysql中加入了

log-bin=mysql-bin  

binlog-do-db=database1,database2 或 binlog-ignore-db=database1,database2两项导致出错

最主要的原因在于mysql未安装,未执行./script/mysql-install-db --user=mysql --datadir=/data/mysql


2、配置好后,主从一直无法同步,主要是在配置从上未按下面配置好

主mysql:

log-bin=mysql-bin  

binlog-do-db=database1,database2 或 binlog-ignore-db=database1,database2

重启 /etc/init.d/mysqld restart

从mysql:

log-bin=mysql-bin  

replication-do-db=database1,database2 或 replication-ignore-db=database1,database2

重启 /etc/init.d/mysqld2 restart



mysql主从配置

标签:mysql   服务器   命名   local   

原文地址:http://thinkrain.blog.51cto.com/824747/1789913

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!