Lap+mysql(主从同步)

Posted make有意义

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lap+mysql(主从同步)相关的知识,希望对你有一定的参考价值。

两个实验:mysql主从同步+lap+mysql(主从)

环境:(我用了三台服务器搭建,应该还可以用两台的:lamp(含mysql主)+mysql(从))

LAP:192.168.1.108(centos7.4,用前一实验lamp的环境)

Mysql主:192.168.1.127

Mysql从:192.168.1.128

疑问点:master上的bin-log文件名与position的数字,好像每次查看的都不一致的?

答:是的,只要有了数据增删查改等操作都会有节点化,节点就是为了记录该变化过程中所有的命令。

数据库的主从同步实验

1:在两个mysql主从服务器上分别编译安装mysql

yum install gcc c c++ cmake ncurses-develncurses –y

wget http://down1.chinaunix.net/distfiles/mysql-5.5.20.tar.gz

tar –zxvf

cd /usr/src/mysql-5.5.20/

cmake  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql55/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DWITH_XTRADB_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DWITH_EXTRA_CHARSETS=1 -DDEFAULT_CHARSET=utf8  -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_BIG_TABLES=1 -DWITH_DEBUG=0

make && make install

cd /usr/local/mysql55/

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

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

chkconfig –add mysqld

chkconfig –level 35 mysqld on

mkdir –p /data/mysql

useradd mysql

/usr/local/mysql55/scripts/mysql_install_db --user=mysql --datadir=/data/mysql/ --basedir=/usr/local/mysql55/

ln –s /usr/local/mysql55/bin/* /usr/bin/

systemctl start mysqld.service

2:mysql主从复制配置

主mysql服务器上的配置:

因为上面有:cp support-files/my-large.cnf /etc/my.cnf操作,基本上需要的配置里面已经有。如:

其中注意的是:server-id=1  log-bin=mysql-bin

cat /etc/my.cnf |grep -v "#" |grep -v "^;"|grep -v "^$"

第一个grep是过滤带#号的行,第二个grep过滤以;号为开头的行,第三个grep过滤掉所有的空行。

3:在主上,给某个用户有从的权限。

Grant replication slave on *.* to ‘mo’@’%’ identified by ‘mo’;

刷新权限:flush privileges;

4:查看bin-log文件及position点

Show master status;

5.主上要关闭防火墙,selinux。从可以不用关。

Lap+mysql(主从同步)

6.在从数据器上,同样/etc/my.cnf配置基本与主一样,只有两个地方有区别,如下:

#Log-bin=mysql-bin

Server-id = 2

Lap+mysql(主从同步)

7. Slave指定Master IP、用户名、密码、bin-log文件名(mysql-bin.000006)及position(107),代码如下: change master to master_host='192.168.1.127',master_user='mo',master_password='mo',master_log_file='mysql-bin.000006',master_log_pos=107;

启动:slave start;

用命令查看主从状态是否连接成功:show slave status\G;

主要是这两个参数:

Lap+mysql(主从同步)
Lap+mysql(主从同步)

=============================测试主从数据是否同步=======================

主要是主创建数据库或表,或插入数据,然后在从上看是不是数据同步了。

Lap+mysql(主从同步)


Lap+mysql(主从同步)


Lap+mysql(主从同步)
Lap+mysql(主从同步)

LAP+mysql(主从)实验

1.在主数据库服务器上添加一个数据库,并允许LAP主机能够用root访问。

create database mo_test charset=utf8;

grant all on mo_test.* to root@'192.168.1.108' identified by "root";

Lap+mysql(主从同步)

2.在LAP服务器上新添加一个站点为:www.test-mysql.com,记得在测试主机上hosts文件添加对应域名访问。

Lap+mysql(主从同步)
Lap+mysql(主从同步)

填写的是主数据库上的IP

Lap+mysql(主从同步)
Lap+mysql(主从同步)
Lap+mysql(主从同步)

回到主数据库主机上,查看是否有数据过来

use mo_test;

Show tables;

在从数据库主机上看下是否有数据同步过来。

备注:一般是开启了主从复制后,后面添加的数据才会过去,在这之前的是不过去的,若要使主从数据完全一致,则在开启主从之前,应先将主的数据库备份到从数据库上,再开启主从复制。mysqldump工具是mysql自带数据备份工具>mysqldump -uroot -p -d 数据库名 > /tmp/back.sql

具体的mysqldump的数据导出与导入可网上查找。


以上是关于Lap+mysql(主从同步)的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL管理之主从同步管理

MYSQL管理之主从同步管理

mysql1.6(主从同步,数据读写分离,mysql优化)

MySQL主从同步实验

MySQL的3节点主从同步复制方案

LAP+mysql-主从+redis