mysql 5.5数据库主从配置步骤详解

上次给大家介绍了mysql 5.1主从搭建配置教程,这次我们来实现mysql 5.5的主从复制,其实大体上配置是差不多的,只有点细微的差别.
系统:centos 5.x
需要的软件包:mysql-5.5.33.tar.gz
环境准备:
服务器a:192.168.10.151 (主)
服务器b:192.168.10.152 (从)

1.安装前准备
wget http://mysql.llarian.net/Downloads/MySQL-5.5/mysql-5.5.33.tar.gz
yum -y install gcc gcc-c++ libtool-libs autoconf freetype-devel gd libjpeg-devel
libpng-devel libxml2-devel ncurses-devel zlib-devel zip unzip curl-devel wget crontabs
file bison cmake patch mlocate flex diffutils automake make kernel-devel cpp
readline-devel openssl-devel vim-minimal glibc-devel glib2-devel
bzip2-devel e2fsprogs-devel libidn-devel gettext-devel expat-devel
libcap-devel libtool-ltdl-devel pam-devel pcre-devel libmcrypt-devel

2.在服务器a上安装mysql
tar zxf mysql-5.5.33.tar.gz && cd mysql-5.5.33
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=complex -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1

make
make install

chmod +w /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql
cd support-files/
cp my-medium.cnf /etc/my.cnf
cp -f mysql.server /etc/rc.d/init.d/mysqld
mkdir /var/lib/mysql
/usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/var/lib/mysql --user=mysql
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
cat > /etc/ld.so.conf.d/mysql.conf<<EOF
/usr/local/mysql/lib/mysql
/usr/local/lib
EOF
ldconfig

如果你是在64位机器上的话,那你就执行下面这个命令:
ln -s /usr/local/mysql/lib/mysql /usr/lib64/mysql

如果你是在32位机器上的话,那就执行下面的命令:
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

然后再执行:
ln -s /usr/local/mysql/bin/mysql /usr/bin
ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
ln -s /usr/local/mysql/bin/mysqldump /usr/bin
service mysqld start
mysqladmin -u root password 'password'

当然如果大家觉得编译安装mysql很麻烦的话,那么可以去看看这篇文章安装mysql5.5二进制包.

服务器b安装mysql配置跟服务器a一样,这里就不说了.

3.配置主从
在服务器a上:
vi /etc/my.cnf
[mysqld]
log-bin=master-bin
log-bin-index=master-bin.index
server-id = 1
innodb_file_per_table = 1
binlog_format=mixed

授权复制用户:
mysql -u root -p
grant replication slave on *.* to 'dbmysql'@'%' identified by '123456';
flush privileges;

重启mysql
service mysqld restart

在服务器b上:
vi /etc/my.cnf
[mysqld]
relay-log = relay-log
relay-log-index = relay-log.index
server-id = 2
innodb_file_per_table = 1
binlog_format=mixed

然后重启mysql
service mysqld restart

服务器b连接连接主服务器并复制
先在服务器a上查看master的状态
mysql> show master status;
+-------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-------------------+----------+--------------+------------------+
| master-bin.000001 | 107 | | |
+-------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

然后在服务器b上进行连接
mysql> change master to master_host='192.168.10.151',master_user='dbmysql',maste
r_password='123456',master_log_file='master-bin.000001',master_log_pos=107;

查看一下slave状态
mysql> show slave statusG
*************************** 1. row ***************************
Slave_IO_State:
Master_Host: 192.168.10.151
Master_User: dbmysql
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: master-bin.000001
Read_Master_Log_Pos: 107
Relay_Log_File: localhost-relay-bin.000001
Relay_Log_Pos: 4
Relay_Master_Log_File: master-bin.000001
Slave_IO_Running: No
Slave_SQL_Running: No
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 107
Relay_Log_Space: 107
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_(www.111cn.net)CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 0
1 row in set (0.00 sec)

启动slave再查看
mysql> start slave;
Query OK, 0 rows affected (0.01 sec)

mysql> show slave statusG
*************************** 1. row ***************************
Slave_IO_State: Connecting to master
Master_Host: 192.168.10.151
Master_User: dbmysql
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: master-bin.000001
Read_Master_Log_Pos: 107
Relay_Log_File: localhost-relay-bin.000001
Relay_Log_Pos: 4
Relay_Master_Log_File: master-bin.000001
Slave_IO_Running: Connecting
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 107
Relay_Log_Space: 107
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 2003
Last_IO_Error: error connecting to master 'dbmysql@192.168.10.151:3306' - retry-time: 60 retries: 86400
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 0
1 row in set (0.00 sec)

看到上面错误了没,说明mysql主和从服务器的防火墙没有开放3306端口,去服务器a和服务器b上把3306端口打开,再来查看mysql从的状态
mysql> show slave statusG
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.10.151
Master_User: dbmysql
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: master-bin.000001
Read_Master_Log_Pos: 107
Relay_Log_File: relay-log.000011
Relay_Log_Pos: 254
Relay_Master_Log_File: master-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 107
Relay_Log_Space: 404
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id: 1
1 row in set (0.00 sec)

好了,可以看到Slave_IO_Running和Slave_SQL_Running都是yes了,下面也没有error提示了.

4.验证
在mysql主上创建个数据库
mysql> create database emlog;
Query OK, 1 row affected (0.01 sec)

再在mysql从上查看是否有这个数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| emlog |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.02 sec)

可以看到已经同步复制过来了,mysql主从搭建成功.
from:http://www.111cn.net/database/mysql/52862.htm

转载于:https://www.cnblogs.com/alibai/p/4023184.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/575150.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何画圆柱_什么是最速降线?如何来验证一下呢?这里用SolidWorks来试一试

一个仅受重力的物体&#xff0c;从一个点出发&#xff0c;沿着一条没有摩擦的斜坡滚动到另外一个点。肯定有一个斜坡使物体运动的时间最短。这个斜坡所在的曲线就是“最速降线”。关于这个最速降线是怎么计算出来&#xff0c;我并不知道&#xff0c;但是他有一个结论&#xff0…

python读取配置文件使用_python 使用 ConfigParser 读取和修改INI配置文件

在程序开发中&#xff0c;使用独立的配置文件来配置一些参数常见且方便&#xff0c;配置文件的解析或修改并不复杂&#xff0c;在python里更是如此&#xff0c;在官方发布的库中就包含有做这件事情的库&#xff0c;那就是ConfigParser&#xff0c;ConfigParser模块解析的配置文…

根据用户id查询菜单列表(菜单权限问题)

根据用户id查询菜单列表&#xff08;菜单权限问题&#xff09;&#xff1a; 最高级用户菜单效果图&#xff1a; 较低级别用户菜单效果图&#xff1a; SQL语句分析图&#xff1a; 根据用户id查询对应菜单&#xff08;权限&#xff09;SQL语句&#xff1a; SELECT * FROM us…

C# 设计模式 - 单例模式 演示

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DBImportTool.Sgile{//第一种单例模式Demopublic class A{private volatile static A _instance null;private static readonly object lockHelp…

pycharm中配置r语言_【R语言】R语言中的循环

编程中减少代码重复的两个工具&#xff0c;一是循环&#xff0c;一是函数。循环&#xff0c;用来处理对多个同类输入做相同事情&#xff08;即迭代&#xff09;&#xff0c;如对不同列做相同操作、对不同数据集做相同操作。R语言有三种方式实现循环&#xff1a;&#xff08;1&a…

钉钉api 获取 accesstoken_Thinkphp5.X异常接管后通过钉钉机器人推送通知

大多团队在生产环境下都会关闭app_debug&#xff0c;所以相对应的错误信息就不能实时查看到。以下分享一个目前团队项目正在用的生产环境下相关技术人员能第一时间获取通知的方法&#xff1a;先上效果图&#xff1a;以上通知是在钉钉中显示&#xff01;下面介绍开发步骤&#x…

js中将有层级关系的一维数据转换为父子级关系的二维数据、菜单权限三级层级数据实现(树形结构数据)

很久没有发文了&#xff0c;今天发点不一样的&#xff0c;如下&#xff1a; <script>// 一维数据&#xff1a;let arrData[{ r_id: 1, role_name: 开发商, n_id: 1, txt: 主页 },{ r_id: 1, role_name: 开发商, n_id: 2, txt: 项目 },{ r_id: 1, role_name: 开发商, n_id…

可用性

1&#xff0c;百度百科 http://baike.baidu.com/view/1436.htm 2转载于:https://www.cnblogs.com/ylbtech/p/4026677.html

修改器内置脚本编写_Node.js 中实践 Redis Lua 脚本

对别人的意见要表示尊重。千万别说&#xff1a;"你错了。"——卡耐基Lua 是一种轻量小巧的脚本语言&#xff0c;用标准 C 语言编写并以源代码形式开放&#xff0c;其设计目的是为了嵌入应用程序中&#xff0c;从而为应用程序提供灵活的扩展和定制功能。由于 Lua 语言…

项目上线,部署到服务器(腾讯服务器),http协议及https协议(微信小程序必须https协议才可发布)

一、准备服务器&#xff1a; 1.选择自己的服务器&#xff0c;这里有很多服务器比如&#xff0c;阿里服务器&#xff0c;腾讯服务器等&#xff0c;这里我选择腾讯服务器做测试&#xff0c;其官网&#xff1a;https://cloud.tencent.com/&#xff0c;微信扫码登录后如下进入首页…

队列的基本操作_算法与数据结构(五) 栈和队列

? 工欲善其事&#xff0c;必先利其器。栈和队列 - Stack And Queue栈如何理解栈呢&#xff1f;后进者先出&#xff0c;先进者后出&#xff0c;这就是典型的 "栈" 结构。04_栈和队列-栈结构从栈的操作特性上来看&#xff0c;栈是一种“操作受限”的线性表&#xff0c…

Linq GroupJoin 使用

备忘: var data BoshccEntities.Current.TB_MB_1.GroupJoin(BoshccEntities.Current.TB_MB_2, o > o.HospitalID, m > m.MemberID, (t, m) > new { t, m }).GroupJoin(BoshccEntities.Current.TB_CM_3, o > o.t.ServiceCode, s > s.DicNum, (o, s) > new { …

八邻域轮廓跟踪算法_结合mRMR选择和IFCM聚类的遥感影像分类算法

随着遥感成像技术的发展&#xff0c;高分遥感影像空间分辨率逐年提高&#xff0c;已经成为获取地物信息的主要数据来源之一。高分影像分类作为遥感影像处理的重要任务之一&#xff0c;在地理国情普查与监测、数字城市建设、城市规划等领域具有广阔的应用前景。高分影像具有纹理…

node.js中net模块、node实现tcp通信

node.js中net 一、net模块感知&#xff1a; net模块用于创建基于TCP&#xff08;或IPC&#xff09;通信的服务器或客户端&#xff0c;它是nodejs内置模块&#xff0c;直接使用require(‘net’)的方式引入&#xff0c;类似http模块。 二、创建一个tcp服务器&#xff1a; //1…

python做一个考试系统_Python在线考试系统防作弊功能的思路和实现

我自己用Python开发了一套教学管理软件&#xff0c;具有在线点名、提问、答疑、交作业、自测、在线考试、数据导入导出与汇总、Word试卷生成等多个功能&#xff0c;其中在线考试系统具有防作弊的功能&#xff0c;不少人觉得很神奇&#xff0c;其实思路和代码都很简单。主要的原…

ebs oracle 落伍了吗_向不了解oracle EBS的人介绍Oracle EBS

体系架构界面风格模块组成模块标准功能ETLRACTEST> ETLRACTEST>begin2 for i in 110000 loop3 insert into test values (i);4 end loop;5 end;6 / PL/SQL procedure successfullycompleted. Elapsed: 00:00:00.44 ETLRACTEST> set autot traceETLRACTEST>ETLRACTE…

struts2--文件上传大小

struts2--文件上传大小 Struts2文件上传的大小限制问题 问题&#xff1a;上传大文件报错……解决&#xff1a;修改struts.xml文件中的参数如下<constant name"struts.multipart.maxSize" value"55000000"/><action name"UploadFile" cl…

element-plus中导航高亮不自动刷新问题

解决使用element-plus el-submenu时页面被this.$router.push(“xxx”)跳转后&#xff0c;导航菜单高亮不能自动刷新问题&#xff0c;需要注意以下几点&#xff1a; 在el-menu加上routerindex必须绑定路由的path,参考上面的例子&#xff0c;/不能少default-active设为当前路由&…

计算机二级考试python怎么报名_计算机二级报名流程和条件

对于第一次参加全国计算机二级考试的考生来说&#xff0c;他们对于计算机二级报名流程和条件不是清楚&#xff0c;小编这就来给大家梳理一下。计算机二级报名流程 一、报名 分为网上报名和现场报名。 网上报名&#xff1a;考生在规定时间内登录本省计算机资格网站&#xff0c;按…

ws2_32.dll的妙用与删除 (禁网)

ws2_32.dll是Windows Sockets应用程序接口&#xff0c;用于支持Internet和网络应用程序。程序运行时会自动调用ws2_32.dll文件&#xff0c;ws2_32.dll是个动态链接库文件位于系统文件夹中。Windows在查找动态链接库文件时会先在应用程序当前目录搜索&#xff0c;如果没有找到然…