文档章节

mysql主从复制的简单配置

whaon
 whaon
发布于 2015/05/27 16:53
字数 697
阅读 305
收藏 29

0.环境:

master:windows7,mysql5.5

slave:centos6.5(虚拟机),mysql5.1

1.先说下centos6.5安装mysql以及简要配置

yum install -y mysql-server mysql mysql-devel

通过这种方式安装的是mysql5.1版本

然后

 cd /usr/share/doc/mysql-server-5.1.73/
 cp my-large.cnf  /etc/my.cnf
 vi /etc/my.cnf

在[mysqld]下添加:

character_set_server=utf8
character_set_client=utf8
collation-server=utf8_general_ci
default-storage-engine=INNODB
lower_case_table_names=1 #是表名不区分大小写

在[client]下添加:

default-character-set=utf8

查找server-id,并改为2(不能和master的一样即可),如果没有的话自己添加一行

然后启动mysql

service mysqld start

修改root用户的密码,默认是空

 mysqladmin -u root password 'root'

然后即可登录:

mysql -u root -p

让其他机器可以用root用户登录:

GRANT ALL ON *.* TO 'root'@'%' identified by 'root' WITH GRANT OPTION;

2.windows下master的配置

在my.ini末尾填下如下内容:

#Master Config
server-id = 1
log-bin = mysql-bin
binlog-do-db = test
binlog-ignore-db = mysql

注意在slave的配置中也会有一个server-id,这2个不要重复即可

log-bin 指定日志类型

binlog-do-db 是你需要复制的数据库名称,如果有多个就用逗号“,”分开

binlog-ignore-db 是不需要复制的数据库名称,如果有多个就用逗号“,”分开

然后重启mysql

net stop mysql
net start mysql

可以查看master的状态

show master status;

建立一个名称和密码都为slave的用户,专门用于复制

3.linux下slave的配置 

有2种方式:

一种是直接修改/etc/my.cnf

另一种是用命令,可以不用重启mysql

这里用命令的方式:

change master to master_host='192.168.35.145', 
master_port=3306,
master_user='slave',
master_password='slave'

然后

start slave

查看slave状态

show slave status

这是master的test数据库就会同步到slave里,可以自己验证下

后面在master里面的修改都会自动同步到slave

----------------------------我是华丽的分割线----------------------------

安装好mysql后,在类似/usr/share/doc/mysql-server-5.1.73/目录下有好几个配置文件: my-small.cnf、my-medium.cnf、my-large.cnfmy-huge.cnf和my-innodb-heavy-4G.cnf分别针对不同需求和机器配置而给的配置模板,对于一般的服务器来说用my-huge.cnf或者my-innodb-heavy-4G.cnf即可

执行service mysqld start后默认会在/var/lib/mysql下生成一些配置文件和mysql自己的库,如果删除后就不能启动了,可以执行

mysql_install_db
来初始化,但是这样后可能仍然启动不了,如果查看日志的话会发现类似下面的错误:

061110  9:44:16 [ERROR] /usr/libexec/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
061110  9:44:16 [ERROR] Fatal error: Can't open privilege tables: Can't find file: './mysql/host.frm' (errno: 13)
但是我们会发现 /var/lib/mysql/mysql/host.frm这个文件其实是存在的,这是因为权限的问题,解决方式如下,用下面的语句替代上面的语句即可:

mysql_install_db --user=mysql

© 著作权归作者所有

共有 人打赏支持
whaon

whaon

粉丝 43
博文 39
码字总数 35115
作品 0
厦门
程序员
MySql 主从复制配置之GTID

 GTID是一个基于原始mysql服务器生成的一个已经被成功执行的全局事务ID,它由服务器ID以及事务ID组合而成。这个全局事务ID不仅仅在原始服务器器上唯一,在所有存在主从关系 的mysql服务器上...

898009427
08/15
0
0
Mysql主从复制和读写分离方案分析

引子 最近在研究Web服务端负载均衡方面的技术,参考网上资料,总体思路可以分为如下几类: 1.应用服务器集群,典型的代表就是Nginx+Tomcat实现负载均衡; 2.数据库集群。 本文主要关注数据库...

蓝狐乐队
2015/03/24
0
1
Mysql主从复制以及常见错误问题分析

Mysql主从复制以及常见错误问题分析 一、主从复制简介: 1、mysql主从复制原理: Mysql主从复制的实现,主要依赖于二进制日志来实现,过程主要是根据把主的MySQL 的数据复制到其它主机( Sla...

技术小疯子
01/22
0
0
Ubuntu下安装Mysql(5.5)和主从功能配置

Ubuntu下安装Mysql(5.5)和主从功能配置 经过几天的折腾,终于把Mysql主从功能配置好了,其实配置很简单,不过还是遇到了各式各样的错误,下面总结一下, 在安装之前,可以先ping一下两台服...

Eric_HSBC
2013/01/04
0
0
Mysql数据库AB复制简单实现

Mysql 主 从 复 制 在实际企业应用环境当中,单台mysql数据库是不足以满足日后业务需求的。譬如服务器发生故障,没有备份服务器来提供服务的话,业务就得停止。介于这种情况,我们可以对mys...

YLSL2014
07/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

文件的压缩与解压(linux)

Linux下*.tar.gz文件解压缩命令 1.压缩命令:   命令格式:tar -zcvf 压缩后文件名.tar.gz 被压缩文件名 可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。 2.解压缩命令: ...

qimh
22分钟前
1
0
invalid character found in the request target 异常

这个异常时因为Tomcat 9不支持请求格式出现“{”等非法字符的问题 因为tomcat版本问题遇到的坑,记录一下。 问题 今天由于要测试一下订单详情页的异步查询,在本地起了一个服务,发送的请求是...

edwardGe
27分钟前
1
0
发现抓包软件fiddler的bug

1个请求他跳转之后,直接400,被拦在了Apache,使用fiddler 的,replay requests 是同样的结果,但是replay composer确是正常的。 也就是说这replay requests 是发原来的包,replay composer...

NLGBZJ
37分钟前
1
0
linux screen 命令详解

shell关闭后, 主机仍然运行 screen命令 启动jenkins以后, screen, 然后按ctrl+a 再按d 这样暂停了子界面, 这时候回到了父界面 用screen –ls查看目前子界面的状态 [root@free /]# screen -l...

SuShine
37分钟前
1
0
mac机器切换无线网络导致网页不能打开的问题

问题: 公司和家里使用不同的WI-FI,每次从家到公司时自动切换网络后,公司的许多地址不能访问, ping域名是可以ping同的,但是网页却打不开... 问题分析: 初步猜想是DNS缓存的问题? 对于MAC系统没...

Lennie002
40分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部