100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 基于RHEL6.0的mysql服务器复制的主主架构实现

基于RHEL6.0的mysql服务器复制的主主架构实现

时间:2019-04-24 05:26:35

相关推荐

基于RHEL6.0的mysql服务器复制的主主架构实现

基于RHEL6.0的mysql服务器复制的主主架构实现

说明:本文选用172.16.22.1和172.16.22.3作为主服务器

两个主服务器的软件版本应相同

两个主服务器server-id 应不同

两个主服务器互为主从,所以在这里一个主服务器即是另一个主服务器的从服务器

一、准备条件:安装mysql(本文选用类似于一种绿色软件的方式安装mysql,特点:方便、快捷)

1.在172.16.22.1主机上安装mysql-5.5.22

(1) .新建用户以安全方式运行进程:

#groupadd-rmysql#useradd-gmysql-r-s/sbin/nologin-Mmysql

(2).安装并初始化mysql-5.5.22

#tarxvfmysql-5.5.22-linux2.6-i686.tar.gz-C/usr/local#cd/usr/local/#ln-svmysql-5.5.22-linux2.6-i686mysql#cdmysql#chown-Rmysql:mysql.#scripts/mysql_install_db--user=mysql--datadir=/usr/local/mysql/data#chown-Rroot.

(3).为mysql提供主配置文件:

#cd/usr/local/mysql#cpsupport-files/my-f/etc/f

并修改此文件中thread_concurrency的值为你的CPU个数乘以2(由于只有一颗CPU,所以这里thread_concurrency = 2),另外还需要添加如下行指定mysql数据文件的存放位置:

thread_concurrency = 2

datadir = /usr/local/mysql/data

(4).为mysql提供sysv服务脚本,并添加mysqld至服务列表,而后启动服务测试。

#cd/usr/local/mysql#cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld#chkconfig--addmysqld#chkconfigmysqldon#servicemysqldstart

为了使用mysql的安装符合系统使用规范,并将其开发组件导出给系统使用,这里还需要进行如下步骤:

(5).输出mysql的man手册至man命令的查找路径:

编辑/etc/man.config,添加如下行即可:

MANPATH /usr/local/mysql/man

(6).输出mysql的头文件至系统头文件路径/usr/include:

这可以通过简单的创建链接实现:

# ln -sv /usr/local/mysql/include /usr/include/mysql

(7)输出mysql的库文件给系统库查找路径, 而后让系统重新载入系统库:

#echo'/usr/local/mysql/lib'>/etc/ld.so.conf.d/mysql.conf#ldconfig-v

(8).修改PATH环境变量(直接在/etc/profile文件里添加“PATH=$PATH:/usr/local/mysql/bin”即可),让系统可以直接使用mysql的相关命令:

#vim/etc/profilePATH=$PATH:/usr/local/mysql/bin#source/etc/profile

2.在172.16.22.3主机上安装mysql-5.5.22

(1) .新建用户以安全方式运行进程:

#groupadd-rmysql#useradd-gmysql-r-s/sbin/nologin-Mmysql

(2).安装并初始化mysql-5.5.22

#tarxvfmysql-5.5.22-linux2.6-i686.tar.gz-C/usr/local#cd/usr/local/#ln-svmysql-5.5.22-linux2.6-i686mysql#cdmysql#chown-Rmysql:mysql.#scripts/mysql_install_db--user=mysql--datadir=/usr/local/mysql/data# chown -R root .

(3).为mysql提供主配置文件:

#cd/usr/local/mysql#cpsupport-files/my-f/etc/f

并修改此文件中thread_concurrency的值为你的CPU个数乘以2(由于只有一颗CPU,所以这里thread_concurrency = 2),另外还需要添加如下行指定mysql数据文件的存放位置:

thread_concurrency = 2

datadir = /usr/local/mysql/data

(4).为mysql提供sysv服务脚本,并添加mysqld至服务列表,而后启动服务测试。

#cd/usr/local/mysql#cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld#chkconfig--addmysqld#chkconfigmysqldon#servicemysqldstart

为了使用mysql的安装符合系统使用规范,并将其开发组件导出给系统使用,这里还需要进行如下步骤:

(5).输出mysql的man手册至man命令的查找路径:

编辑/etc/man.config,添加如下行即可:

MANPATH /usr/local/mysql/man

(6).输出mysql的头文件至系统头文件路径/usr/include:

这可以通过简单的创建链接实现:

# ln -sv /usr/local/mysql/include /usr/include/mysql

(7)输出mysql的库文件给系统库查找路径,而后让系统重新载入系统库:

#echo'/usr/local/mysql/lib'>/etc/ld.so.conf.d/mysql.conf#ldconfig-v

(8).修改PATH环境变量(直接在/etc/profile文件里添加“PATH=$PATH:/usr/local/mysql/bin”即可),让系统可以直接使用mysql的相关命令:

#vim/etc/profilePATH=$PATH:/usr/local/mysql/bin#source/etc/profile

二、配置主服务器

1.配置主服务器(172.16.22.1):

(1).编辑/etc/f配置文件开启中继日志与二进制日志:

log-bin=mysql-bin (默认情况下都已经开启,此时不需要做修改)

在“log-bin=mysql-bin”下面增加四项:

relay-log = relay-bin

relay-log-index = relay-bin.index

auto_increment_offset = 1

auto_increment_increment = 2

(2).建立复制权限用户:

#mysqlmysql>GRANTREPLICATIONCLIENT,REPLICATIONSLAVEON*.*TOlh@’172.16.22.%’IDENTIFIEDBY‘123456’;mysql>SHOWGRANTSFORlh@’172.16.22.%’;

2.配置主服务器(172.16.22.3):

(1).编辑/etc/f配置文件,更改server-id使它和主服务器(172.16.22.1)的server-id不一样,开启二进制日志和中继日志:

# vim /etc/f

找到server-id,并改为

server-id = 11

log-bin=mysql-bin (默认情况下都已经开启,此时不需要做修改)

在“log-bin=mysql-bin”下面增加四项:

relay-log = relay-bin

relay-log-index = relay-bin.index

auto_increment_offset =2

auto_increment_increment = 2

(2).建立复制权限用户:

#mysqlmysql>GRANTREPLICATIONCLIENT,REPLICATIONSLAVEON*.*TOlihu@’172.16.22.%’IDENTIFIEDBY‘123456’;mysql>SHOWGRANTSFORlihu@’172.16.22.%’;

(3).在从服务器(172.16.22.1)上指定它的主服务器:

#mysqlmysql>CHANGEMASTERTO->MASTER_HOST=’172.16.22.3’,->MASTER_USER=’lihu’,->MASTER_PASSWORD=’123456’;mysql>STARTSLAVE;mysql>SHOWSLAVESTATUS\G

如果看到方框内的两项都为‘yes’的话,说明你的从服务器已经正常启动了。

(4).在从服务器(172.16.22.3)上指定它的主服务器:

#mysqlmysql>CHANGEMASTERTO->MASTER_HOST=’172.16.22.1’,->MASTER_USER=’lh’,->MASTER_PASSWORD=’123456’;mysql>STARTSLAVE;mysql>SHOWSLAVESTATUS\G

如果看到方框内的两项都为‘yes’的话,说明你的从服务器已经正常启动了。

三、对主服务器进行测试

在172.16.22.1上执行如下操作:

#mysqlmysql>showdatabases;

在172.16.22.3执行如下操作:

#mysqlmysql>showdatabases;

此时可以看到两个主服务器的数据库都是四个。

现在我们在主服务器(172.16.22.1)上创建一个数据库testdb和表test,看从服务器(172.16.22.3)上是否也有呢?

在172.16.22.1上执行如下操作:

#mysqlmysql>createdatabasetestdb;mysql>usetestdb;mysql>createtabletest(->Namevarchar(30)notnull,->Agechar(3)notnull);

在172.16.22.3上查看是否有testdb数据库以及test1表:

#mysqlmysql>SHOWDATABASES;

#mysqlmysql>showtables;mysq>desctest;

此时发现在172.16.22.3上有testdb数据库和test表,说明成功了一半。

现在我们在主服务器(172.16.22.3)上创建一个数据库lh,看从服务器(172.16.22.1)上是否也有呢?

#mysqlmysql>createdatabaselh;

在172.16.22.1上查看是否有数据库lh?

#mysqlmysql>showdatabases;

此时我们发现在172.16.22.1上有数据库lh,说明我们mysql服务器的主主架构完全实现了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。