lnmp mysql主从_LNMP 分布式集群(三):MySQL主从数据库服务器的搭建

前言

LNMP 分布式集群的部署实践 系列文章:

回顾一下基本的架构:

lnmp mysql主从_LNMP 分布式集群(三):MySQL主从数据库服务器的搭建_第1张图片

这一篇我们部署7、8号机,MySQL数据库服务器。

配置

源码编译安装MySQL(7号机)

使用的mysql版本是 Generic Linux (Architecture Independent), Compressed TAR Archive(mysql-5.5.61.tar.gz)。

# 安装依赖

yum -y install gcc-c++ cmake ncurses-devel

wget https://downloads.mysql.com/archives/get/file/mysql-5.5.61.tar.gz

tar -zxf mysql-5.5.61.tar.gz

cd mysql-5.5.61

cmake -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

make && make install && cd ..

复制代码

配置 MySQL(7号机)

# 配置数据保存目录和sock文件保存目录

vi /etc/my.cnf

datadir=/data/mysql

socket=/tmp/mysql.sock

# 必须给目录赋予权限

chown -R mysql:mysql /data/mysql

# 创建mysql用户

useradd -s /sbin/nologin -M mysql # -m:自动建立用户的登入目录;-M:不要自动建立用户的登入目录;-s:指定用户登入后所使用的shell;

# 初始化数据库

cd /usr/local/mysql

./scripts/mysql_install_db

# 启动MySQL并添加到服务

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

chkconfig --add mysql

service mysql start

# 开放3306端口

netstat -tnlp | grep mysql

iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

service iptables save # 不能用的话要么更新,要么更改配置文件,这在上一篇文章有讲

# 配置MySQL中的用户

cd /usr/local/mysql/bin

./mysql

UPDATE mysql.user SET password=password('123456') WHERE user='root';

DELETE FROM mysql.user WHERE user='';

FLUSH PRIVILEGES;

EXIT

复制代码

lnmp mysql主从_LNMP 分布式集群(三):MySQL主从数据库服务器的搭建_第2张图片

实现 MySQL 主从复制

在 7 号机(主)中完成 mysql 的安装之后,克隆出 8号机(从,注意网络IP的配置) 。

在7 号机(主)中开启 bin 日志(二进制日志,用于数据库增量备份,数据库之间复制等)。

vi /etc/my.cnf

[mysqld]

...

log-bin=mysqlbin-log # 表示文件名为mysqlbin-log

server-id=17 # 表示服务器的唯一ID,可用服务器IP的最后一位

service mysql restart

cd /data/mysql

ll | grep mysqlbin # 当需要和其他服务器数据同步时,会通过这些日志读取数据库的更改记录

复制代码创建用于主从复制的用户

/usr/local/mysql/bin/mysql -uroot -p123456

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'192.168.177.18' IDENTIFIED BY '123456';

SHOW MASTER STATUS;

EXIT;

复制代码

lnmp mysql主从_LNMP 分布式集群(三):MySQL主从数据库服务器的搭建_第3张图片

配置从服务器

vi /etc/my.cnf

server-id=18

service mysql restart

/usr/local/mysql/bin/mysql -uroot -p123456

CHANGE MASTER TO master_host='192.168.177.17', master_user='slave',

master_password='123456', master_log_file='mysqlbin-log.000001', master_log_pos=263;

START SLAVE;

SHOW SLAVE STATUS \G

复制代码

lnmp mysql主从_LNMP 分布式集群(三):MySQL主从数据库服务器的搭建_第4张图片

LNMP 分布式集群的部署实践 系列文章:

dfface 的版权声明:所有文章除特别声明外,均采用 CC BY-NC-SA 4.0

许可协议。转载请注明出处,严禁商业用途!

你可能感兴趣的:(lnmp,mysql主从)