YII配置mysql读写分离
Mysql 读写分离
YIi 配置
<?php return [
'class' => 'yii\db\Connection',
'masterConfig' => [
// 'dsn' => 'mysql:host=localhost;dbname=studyyii',
'username' => 'root',
'password' => 'caesar',
'charset' => 'utf8',
'attributes' => [
// use a smaller connection timeout
PDO::ATTR_TIMEOUT => 10,
],
], // 配置主服务器组
'masters' => [
['dsn' => 'mysql:host=172.31.80.31;dbname=studyyii'],
// ['dsn' => 'dsn for master server 2'],
], // 配置从服务器
'slaveConfig' => [
'username' => 'root',
'password' => 'root',
'charset' => 'utf8',
'attributes' => [
// use a smaller connection timeout
PDO::ATTR_TIMEOUT => 10,
],
],
// 配置从服务器组
'slaves' => [
['dsn' => 'mysql:host=localhost;dbname=studyyii'],
],
];
Linux mysql master
My.cnf:
server_id = 1 #从服务器标识,范围1---2E32-1 log_bin = mysql_bin binlog_do_db = studyyii binlog_do_db = mysql
#mysql service restart
windows mysql slave
mysql.ini:
[mysqld] port=3306 server-id = 2 replicate-do-db = study
重启mysql
登陆mysql
mysql> stop slave;
mysql> change master to master_host='192.168.1.200',master_user='root',master_password='123456';
mysql> start slave;
mysql> show slave status\G;
查看这两项是否为YES,yes为正常。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Ok 了 读写分离,主从同步
Mysql –master linux-slave
My.ini:
Server-id=1 relay-log=relay-bin relay-log-index=relay-bin-index binlog-do-db = studyyii
重启服务器
登陆mysql
Mysql –u root –p
在主数据库建立slave连接的权限:
mysql> grant replication slave,reload,super on *.* to 'root'@'172.31.80.31' iden
tified by 'root';
(root为连接的账号,IP 和密码)
Show master status;
记住,以前我没设置权限,显示的position为120 一直因为没开权限么启动
至此,Windows mysql master 设置完毕
二、打开Linux mysql
Vi /etc/my.cnf #根据你服务器MySQL的设置来编辑,编辑mysql的配置文件
在MySQLd下面添加配置:
:wq 保存退出
Service mysql restart #我的mysql是5.6.23 已经添加为系统服务,其它一下版本是mysqld ,反正就是重启mysql,根据自己的配置来
Mysql –u root –p #连接mysql
设置连接:
change master to master_host='172.31.80.26',master_user='root',master_password='root', master_log_file='mysql-bin.000014',mas14',master_log_pos=344;
#连接的账户 IP 密码为mastermysql的。Master_log_file 和log_pos 为前期Windows mysql的show master status 中看到。
出现OK之后
Start slave;启动slave
查看状态
Show slave status\G;
当slave_IO_Running 和Slave_SQL_Running 都为yes 说明配置成功。
如果IO_Running 为connecting 说明一直在连接,你的配置是有问题的,
检查master 是否有错误,检查slave连接master是否有问题,
然后你就看到更改数据 数据库可以同步了。
YII配置mysql读写分离的更多相关文章
- laravel 配置MySQL读写分离
前言:说到应对大流量.高并发的解决方案的时候,总会有这样的回答,如:读写分离,主从复制...等,数据库层今天先不讨论,那么今天我们就来看看怎么在应用层实现读写分离. 框架:laravel5.7(所有配 ...
- MySQL数据库的同步配置+MySql读写分离
使用mysql主从复制的好处有: 1.采用主从服务器这种架构,稳定性得以提升.如果主服务器发生故障,我们可以使用从服务器来提供服务. 2.在主从服务器上分开处理用户的请求,可以提升数据处理效率. 3. ...
- mysql运维入门6:MySQL读写分离
Amoeba 以MySQL为底层数据存储,并对应用提供MySQL协议接口的proxy 集中想用应用的请求,根据用户事先设置的规则,将SQL请求发送到特定的数据库上执行 基于此可以实现负载均衡.读写分离 ...
- 使用Atlas实现MySQL读写分离+MySQL-(Master-Slave)配置
参考博文: MySQL-(Master-Slave)配置 本人按照博友北在北方的配置已成功 我使用的是 mysql5.6.27版本. 使用Atlas实现MySQL读写分离 数据切分——Atlas读 ...
- mysql读写分离配置(整理)
mysql读写分离配置 环境:centos7.2 mysql5.7 场景描述: 数据库Master主服务器:192.168.206.100 数据库Slave从服务器:192.168.206.200 M ...
- 面试官你好,我已经掌握了MySQL主从配置和读写分离,你看我还有机会吗?
我是风筝,公众号「古时的风筝」,一个简单的程序员鼓励师. 文章会收录在 JavaNewBee 中,更有 Java 后端知识图谱,从小白到大牛要走的路都在里面. 面试官:我看你简历上写的你们公司数据库是 ...
- mysql读写分离(PHP类)
mysql读写分离(PHP类) 博客分类: php mysql 自己实现了php的读写分离,并且不用修改程序 优点:实现了读写分离,不依赖服务器硬件配置,并且都是可以配置read服务器,无限扩展 ...
- amoeba实现MySQL读写分离
amoeba实现MySQL读写分离 准备环境:主机A和主机B作主从配置,IP地址为192.168.131.129和192.168.131.130,主机C作为中间件,也就是作为代理服务器,IP地址为19 ...
- PHP代码实现MySQL读写分离
关于MySQL的读写分离有几种方法:中间件,Mysql驱动层,代码控制 关于中间件和Mysql驱动层实现Mysql读写分离的方法,今天暂不做研究, 这里主要写一点简单的代码来实现由PHP代码控制MyS ...
随机推荐
- PR回写 所有物料规划PR时对净需求+最小采购批量+安全库存+舍入值的先后考虑逻辑
所有物料规划PR时对净需求+最小采购批量+安全库存+舍入值的先后考虑逻辑20171207-1228.docx PR回写案例一: '; --SAFE_QTY:安全库存 ' ; -- MIN_LOT_SI ...
- Linux 学习总结(三)
一. yum 命令 .列出所有可更新的软件清单命令:yum check-update .更新所有软件命令:yum update .仅安装指定的软件命令:yum install <package_ ...
- centos 7 下 Ceph 配置安装
一.环境介绍 系统: CentOS Linux release 7.3.1611 (Core) 硬盘: 系统盘:300GB*2-raid 1 OSD:600GB*4-raid 5 ceph ...
- Linux sudo用法与配置
Linux环境:CentOS 6.7 结构说明 可以通过编辑文件/etc/sudoers来配置,通常使用visudo命令来进行修改,因为如果你修改的格式不符合它会进行提示.接下来就通过一个格式来了解它 ...
- Appium+python自动化4-等待函数
4.1 等待函数癈使用 4.1.1 为什么要使用等待函数 我们在做自动化的时候很多时候都不是很顺利,不是因为app的问题,我们的脚本也没问题,但是很多时候都会报错,比如一个页面本来就有id为1的这个元 ...
- ES5之函数的间接调用 ( call、apply )、绑定 ( bind )
call().apply()的第一个实参是函数调用的上下文,在函数体内通过this来获得对它的引用. call()将实参用逗号分隔:apply ()将实参放入数组.类数组对象中. function h ...
- stm32 启动文件 C和汇编交叉嵌入
在嵌入式系统开发中,目前使用的主要编程语言是C和汇编,C++已经有相应的编译器,但是现在使用还是比较少的.在稍大规模的嵌入式软件中,例如含有OS,大部分的代码都是用C编写的,主要是因为C语言的结构比较 ...
- 微信小程序开发——设置默认图片、错误加载图片
小程序不支持h5中的onerrorimg,只开放了binderror属性,当错误发生时,会发布到 AppService,事件对象event.detail = {errMsg: 'something w ...
- 问题1:鼠标指向导航栏li,但li中a样式未改变
<!--HTML代码--><div class="nav-mid-left"> <ul> <li><a href=" ...
- f5 irules
1.插入XFF when HTTP_REQUEST { if { [HTTP::header exists X-Forward-For] } { set old_xff [HTTP::header v ...