扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1.正常安装第一个mysql(安装步骤省略)
成都创新互联公司专注于伊通企业网站建设,响应式网站设计,购物商城网站建设。伊通网站建设公司,为伊通等地区提供建站服务。全流程按需制作网站,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务
2.在控制面板里停止第一个mysql服务
3.将C:\Program Files\MySQL目录下的所有目录和文件copy到另外一个路径,我这里是copy到E盘
4.创建第二个mysql的my.ini文件
1、首先要在本地建立两个mysql服务(参考这里),指定不同的端口。我这里一个主(3306),一个从(3307)。2、然后修改主配置文件:
[mysqld]
server-id = 1
binlog-do-db=test #要同步的数据库
#binlog-ignore-db=mysql #不同步的数据库,如果指定了binlog-do-db这里应该可以不用指定的
log-bin=mysql-bin #要生成的二进制日记文件名称
修改从配置文件:
[mysqld]
server-id = 2
log-bin = mysql-bin
replicate-do-db=test
3、在主库添加一个用户 repl 并指定replication权限
create user 'repl'@'127.0.0.1' identified by 'asdf';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'127.0.0.1'; -- --这里我指定数据库(test.*)时报错,而指定全库(*.*)时会成功。
4、保持主从mysql的test数据库初始状态一致。
一般是先将所有的表加读锁,然后copy磁盘上的数据库文件夹。我这里直接停止服务,然后将数据文件拷贝过去。
5、在主数据库里面运行show master status;记下file和position字段对应的参数。
1.安装前,首先要了解是建立在什么理论上安装成功的,自己总结的有2个不同,4项注意。即:开启服务的服务名称不同,端口号不同,注意点的重要程度依次是:(1.)越是新版本的软件,越要设置默认端口(3306),老版本的因为成熟度高,稳定性较高所以端口更改比新版本稳定。(2.)先配老版本端口3306配好后更改。不用配环境变量(3.)的安全模式的解决(也就是密码登不进去时候的报错原因)。(4.)不清原因的问题的解决。下面截图说明:
2,老版本官网不太好找,直接用强大的百度搜索就可以.安装过程也可根据其他的教程做.安装好后,更改端口,推荐3307
安装过程(1)、解压缩mysql-noinstall-5.0.51b-win32.zip到一个目录。假定MYSQL_HOME=F:\mysql-5.0.51b-win32(2)、编写mysql的运行配置文件my.inimy.ini(解压的文件里面并没有这个文件,所以自己动手写)这个文件放在 MYSQL_HOME 目录下面-----------------------------[mysqld] # 设置mysql的安装目录 basedir=F:\mysql-5.0.51b-win32(自己的安装目录哈!!!)# 设置mysql数据库的数据的存放目录,必须是data datadir=F:\mysql-5.0.51b-win32\data(自己的安装目录哈!!!)
# 设置mysql服务器的字符集default-character-set=utf8[client]# 设置mysql客户端的字符集default-character-set=gbk[WinMySQLAdmin] Server=F:\mysql-5.0.51b-win32\bin\mysqld-nt.exe-----------------------------(3)安装mysql服务从MS-DOS窗口进入目录F:\mysql-5.0.51b-win32\bin,运行如下命令:mysqld --install mysql --defaults-file=F:\mysql-5.0.51b-win32\my.ini(4)启动mysql数据库启动MySQL服务:net start mysql停止MySQL服务:net stop mysql(5)更改端口,推荐3307
这种架构一般用在以下三类场景
1. 备份多台 Server 的数据到一台如果按照数据切分方向来讲,那就是垂直切分。比如图 2,业务 A、B、C、D 是之前拆分好的业务,现在需要把这些拆分好的业务汇总起来备份,那这种需求也很适用于多源复制架构。实现方法我大概描述下:业务 A、B、C、D 分别位于 4 台 Server,每台 Server 分别有一个数据库来隔离前端的业务数据,那这样,在从库就能把四台业务的数据全部汇总起来,而不需要做额外的操作。那没有多源复制之前,要实现这类需求,只能在汇总机器上搭建多个 MySQL 实例,那这样势必会涉及到跨库关联的问题,不但性能急剧下降,管理多个实例也没有单台来的容易。
2. 用来聚合前端多个 Server 的分片数据。
同样,按照数据切分方向来讲,属于水平切分。比如图 3,按照年份拆分好的数据,要做一个汇总数据展现,那这种架构也非常合适。实现方法稍微复杂些:比如所有 Server 共享同一数据库和表,一般为了开发极端透明,前端配置有分库分表的中间件,比如爱可生的 DBLE。
3. 汇总并合并多个 Server 的数据
第三类和第一种场景类似。不一样的是不仅仅是数据需要汇总到目标端,还得合并这些数据,这就比第一种来的相对复杂些。比如图 4,那这样的需求,是不是也适合多源复制呢?答案是 YES。那具体怎么做呢?
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流