MySQL解决方案
主从复制与主主复制怎么自动切换:使用Keepalived
日常如何导出数据:mysqldump、xtrabackup
主库宕机解决方案(一主多从)
登陆从库>show processlist\G;
#cat /data/3306/data/master.info
#cat /data/3307/data/master.iinfo
显示POS数值最大的将升级为主库
或者利用半同步功能,直接选择做了实时同步的从库升为主库。
授权同步用户和主库一样。
1)确保所有relay log更新完毕
每个从库执行:>stop slave io_thread;show processlist;
直到看到Has reda all realy log; 表示从库更新都执行完毕
2)登陆将要升为主的从库
#mysql -uroot -p'000' -S /data/3306/mysql.sock
>stop slave;
>retset master;
>quit;
3)进入数据库目录,删除master.info relay_log.info
#cd /data/3306/data
#rm -f master.info relay-log.info
检查授权表 read-only等参数
4)提升为主库
#vim /data/3306/my.cnf
开启:log-bin = /data/3306/mysql-bin
注:存在log-slave-updates read-only等一定要注释
#/data/3306/mysql restart
5)若主库没宕机,则需要去主库拉取binlog补全从库。
6)其他从库操作
>stop slave;
>change master to master_host = '192.168.11.6' ;
>start slave;
>show slave status\G;
7)修改程序配置文件从主库35指向32
一般访问数据库用域名,则可直接修改hosts解析。
数据库读写慢原因
1)在程序设计时没有索引
2)I/O吞吐量小
3)内存不足
4)查询数据量过大
数据库同步延迟原因
1)主从库间的网络延迟;
优化:提升端口带宽;
2)从库数量较多导致复制延迟;
优化:建议从库数量3-5个为宜;
3)主从两台机器负载不一致。由于主从复制是主数据库上启动一个I/O线程,从上启动一个I/O线程和一个SQL线程,当机器负载高时,可能导致其中的任何一个线程出现资源不足;
优化:提升硬件性能;
4)慢sql语句过多;
优化:sql执行时间较长,需优化sql语句;
5)主从复制设计问题;
优化:主从复制单线程,可通过多线程IO方案解决;
6)Max_allowed_packet设置不一致。主库设置其值大于从库,当较大的sql语句能在主库上执行,从库其值过小,无法执行;
优化:数值设置保持一致;
7)版本不一致;
优化:版本保持一致;
MySQL解决方案的更多相关文章
- 常见的高可用MySQL解决方案
MySQL数据库作为最基础的数据存储服务之一,在整个系统中有着非常重要的地位,因此要求其具备高可用性是无可厚非的.有很多解决方案能实现不同的SLA(服务水平协定),这些方案可以保证数据库服务器在硬件或 ...
- Ubuntu Server 14.04 --secure-file-priv error in MySql 解决方案
在VPS部署Ubuntu 14.04服务器时,MySQL执行导出文件命令,报错: The MySQL server is running with the --secure-file-priv opt ...
- 远程无法访问linux Mysql解决方案
在网上有很多关于这个的解决方案,我也采用了 写的比较详细的如: 1. 改表法.可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更 ...
- linux环境下,使用Navicat连接mysql时,提示本地IP无法连接虚拟环境下的mysql解决方案
在Linux环境下,使用Navicat连接mysql时,提示本地IP无法连接虚拟环境下的mysql,提示如下: 而导致连接错误的原因是MYSQL没有开启远程登录权限. 解决方案: 在mysql命令中执 ...
- Navicat远程连接不上mysql解决方案
一.can‘t connect to MySql server on ‘47.93.X.X’ 这是因为mysql端口被防火墙拦截,需用linux执行如下指令: 1.#/sbin/iptables -I ...
- Navicat远程连接不上mysql解决方案(已测试过)
内容参考网上的文章,此处只做记录. 一.can‘t connect to MySql server on ‘192.168.X.X’ 这是因为mysql端口被防火墙拦截,需用linux执行如下指令:( ...
- PHP连接不上MySQL解决方案总结
1. 获取当前 mysql.default_socket.mysqli.default_socket.pdo_mysql.default_socket 配置信息 建立一个 PHP 文件, 显示 php ...
- host is not allowed to connect to this mysql解决方案
报错:1130-host ... is not allowed to connect to this MySql server 解决方法: 1. 改表法. 可能是你的帐号不允许从远程登陆,只能在l ...
- SQLServer To MySQL 解决方案
最近在忙一个项目,就不详写了.过两天不忙了把项目总结一下. 思路: Access作为桥梁 1.SQLServer To Access 2007 在access里直接导入 2.Use t ...
随机推荐
- hdu 2553 N皇后
这题要打表,不然超时. AC代码 #include<cstdio> #include<cstring> int n,cnt; int vis[3][20]; int ans[1 ...
- nyoj886 取石子(八) 威佐夫博弈
好累,坐了一天火车, 终于到学校了. 思路:仔细观察威佐夫博弈,发现P态的所有数字都是不重复的,例如(0,0).(1,2).(3,5).(4,7).(6, 10).(8,13).(9,15).(11, ...
- 03 Spring的父子容器
1.概念理解和知识铺垫 在Spring整体框架的核心概念中,容器是核心思想,就是用来管理Bean的整个生命周期的,而在一个项目中,容器不一定只有一个,Spring中可以包括多个容器,而且容器有上下层关 ...
- 实战DeviceIoControl 之一:通过API访问设备驱动程序
Q 在NT/2000/XP中,我想用VC编写应用程序访问硬件设备,如获取磁盘参数.读写绝对扇区数据.测试光驱实际速度等,该从哪里入手呢? A 在NT/2000/XP中,应用程序可以通过API函数Dev ...
- jQuery提示parsererror错误解决办法
jquery来处理ajax,用到了json.但是很诧异,jquery的ajax回调时一直调用了error函数(一直提示parsererror异常),success函数一次没执行过 $.ajax({ t ...
- MinnowBoard MAX 硬件开发板
Minnowboard MAX MinnowBoard MAX是一款紧凑型,经济实惠,而且功能强大的开发板为专业人士和制造商.开放式的硬件设计使无尽的定制和集成的潜力.它采用64位英特尔®凌动™E38 ...
- hdu5945 Fxx and game
单调队列学习 其实和单调栈类似 都是因为有些元素是没有价值的可以舍去 #include<bits/stdc++.h> using namespace std; #define sz(X) ...
- Mac 常用快捷键
可以按下组合键来实现通常需要鼠标.触控板或其他输入设备才能完成的操作. 要使用键盘快捷键,需按住一个或多个修饰键,同时按快捷键的最后一个键.例如,要使用快捷键 Command-C(拷贝),请按住 Co ...
- 手机端仿ios的三级联动脚本四
二,脚本 <script> $("#city-picker").cityPicker({ title: "选择省市区/县", onChange: f ...
- java将字符串转换为指定的时间格式
*String dateString = "18:31:43"; try { Date date = new SimpleDateFormat("HH:mm ...