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

mysql主从搭建

时间:2019-09-26 23:39:06      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:write   mysql   creat   mkdir   start   cell   参数   保存   cat   

一、安装mysql

(1) 解压mysql包,并创建mysql用户与创建mysql数据目录

tar zxvf mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz

mv  mysql-5.6.43-linux-glibc2.12-x86_64   /usr/local/mysql

useradd -s /sbin/nologin  mysql

mkdir  -p /data/mysql

 

(2) 拷贝源码包mysql的启动文件与配置文件

cd /usr/local/mysql

yum  -y install autoconf

./scripts/mysql_install_db  --user=mysql --datadir=/data/mysql

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

cp support-files/my-default.cnf   /etc/my.cnf

(提示是否覆盖,填写y)cp: overwrite ‘/etc/my.cnf’? y

 

chmod 755 /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig mysqld on

 

(3) 编辑mysql的启动文件

 

vi /etc/init.d/mysqld

修改参数为:

basedir=/usr/local/mysql

datadir=/data/mysql

###保存退出。

(4) 启动mysql

/etc/init.d/mysqld start  

netstat -lntp |grep mysql

执行效果,如图2所示

 技术图片

说明mysql主启动完成

 

(5) 拷贝主mysql作为从,示例如下。

cp -r /usr/local/mysql    /usr/local/mysql2

cd /usr/local/mysql2

mkdir -p /data/mysql2

cp /etc/init.d/mysqld  /etc/init.d/mysqld2

./scripts/mysql_install_db  --user=mysql --datadir=/data/mysql2

 

 

(6) 配置从mysql并启动。

chmod 755 /etc/init.d/mysqld2

chkconfig --add mysqld2

chkconfig  mysqld2  on

vi /etc/init.d/mysqld2

###添加下列参数

basedir= /usr/local/mysql2

datadir=/data/mysql2

###保存退出

vi my.cnf

####添加下列参数

port =3307

####保存退出

/etc/init.d/mysqld2 start

netstat -lntp |grep mysql

 

执行效果如图3所示。

 技术图片

(7) 下面配置主数据库

前面主要是搭建主数据库和从数据库,能看到33063307端口,就说明主从数据库都能起来,现在下面配置主和从的复制,首先配置/etc/my.cnf(主配置文件)

vi /etc/my.cnf

###添加下面内容

server_id = 1

log_bin = master

###保存退出

/etc/init.d/mysqld restart

 

####把主数据库的mysql数据拷贝出来作为测试数据,并给从库并同步来使用。

/usr/local/mysql/bin/mysqldump  -uroot mysql > /tmp/mysql.sql

/usr/local/mysql/bin/mysql  -uroot -e “create database testsql”

/usr/local/mysql/bin/mysql  -uroot testsql < /tmp/mysql.sql

 

/usr/local/mysql/bin/mysql

mysql >grant replication slave on *.* to ‘repl‘@127.0.0.1 identified by ‘123456‘;

mysql>flush tables with read lock;

mysql >show master status;

#####此为注释 ctrl+d 表示退出

 

 

 

 

 技术图片

上图中的 file position 会在后面配置 从数据库使用。

 

(8) 下面配置从数据库

vi /usr/local/mysql2/my.cnf

### 添加下面内容

server_id = 2

### 保存退出

/etc/init.d/mysqld2 restart

 

####把备份的数据库还原到从数据中,这边做的目的是为了和主从数据库的数据初始状态一致。

/usr/local/mysql2/bin/mysql -e "create database testsql"

/usr/local/mysql2/bin/mysql testsql < /tmp/mysql.sql

 

/usr/local/mysql2/bin/mysql

mysql>stop slave;

mysql>change master to master_host=‘127.0.0.1‘,master_user=’repl’,master_port=3306,master_password=‘123456‘,master_log_file=‘master.000001‘,master_log_pos=646075;

mysql>start slave;

mysql>show slave status\G;

 

 

技术图片

mysql主从搭建

标签:write   mysql   creat   mkdir   start   cell   参数   保存   cat   

原文地址:https://www.cnblogs.com/yidaoyun/p/11594944.html

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