mysql
文章平均质量分 63
黄传通
这个作者很懒,什么都没留下…
展开
-
放一个很久的PPT,刚出来工作时写的
2009在金山wps分享关于mysql的一些认识,当年wps进军互联网,对mysql认识刚刚起步这csdn不可以嵌flash,只能放个连接http://wenku.baidu.com/view/86242bef19e8b8f67c1cb9a2.html?st=1这csdn不可以嵌flash,只能放个连接原创 2011-12-13 17:52:59 · 675 阅读 · 0 评论 -
PXC 配置笔记-从MySQL直接转成PXC集群
英文别人github的配置流程PXC 能提供高可用,高读,多写支持最重要的优点就是高可能,在3个及以上节点时,其中一个挂了,完全不影响业务。最大的缺点是多写问题,最短板性能上限问题。在我们硬件水平是256G内存,32核CPU,SSD硬件,单行数据大概1K,单表1千万,512表。 QPS在2.5k写+5K读时,就会有节点同步阻塞问题。当时我们临时切成只读(不执行写SQL)10分钟后原创 2018-01-10 17:13:27 · 6756 阅读 · 0 评论 -
Percona 家的 ProxySQL 配置笔记
最近发现了 percona 自家网站的个推荐的 ProxySQL howto 在github.com有开源,并且还在持续更新。感觉commit者就是 percona自家的员工或领他家工资资助的人才。大概记录 对ProxySQL的了解。C++写的,性能应该不是问题。 github地址运行时分admin进程与proxy进程, 一般 6032 端口是 admin 进程。6033是proxy。adm原创 2017-11-16 17:05:53 · 4541 阅读 · 0 评论 -
TokuDB与InonoDB引擎,作为slave的性能差别
左边(8.246)是使用TokuDB-5.6-percona版本的表。 右边(9.232)是使用Innodb-5.7-percona版本的表。 QPS基本上相同,两台都是slave,同一个master拉取binlog,有1024个表。CPU消耗,左边的TokuDB要高很多很多~,同样硬盘IO也相对InnoDB高1倍。还有两个结论:slave的落后值 ,tokuDB间断性有几秒的落后,InnoD原创 2017-11-30 15:27:23 · 598 阅读 · 0 评论 -
mysql-5.7的坑
带 SUPER 权限的用户,写数据不会产生binlog。SUPER的 grant必需是 on . 所以全没binlog。默认强制使用ssl连接,如果主从中包含5.6版本,要强制指向hash算法:SSL_Cipher=’AES128-SHA’;MTS必需打开GTID—这不算坑,记录下而已。percona的xbackup,还不支持5.7(截至2017年初)原创 2017-07-05 13:59:15 · 705 阅读 · 0 评论 -
带PARTITION 的表,在slave中会system lock
问题背景master版本: 5.6.23-72.1-log Percona版本的 slave 版本: 5.7.19-17-log Percona Serverslave是通过 innobackupex 工具导出与恢复的。 配置后执行过mysql_upgrade升级数据,并重启。 某表tb1 有partition属性如: PARTITION BY KEY (target_id) PARTI原创 2017-10-30 15:28:27 · 1131 阅读 · 0 评论 -
白话 MySQL TCP 通信协议-5分钟理解
MySQL协议简短说明大致上采用一问多答的方式,由client发问。所有包头前3个字节为整个包的大小,第3个字节为此次应答中包的序号。故单包大小上限(2^24)-1=(16M-1)字节,序号0~255循环使用。client端第一次连接时,先由服务端发送一个handshake报文给客户端。handshake报文包含: 协议版本、服务端版本、协议支持(兼容)内容标志位(32位)、分配连接ID原创 2016-06-07 15:46:02 · 5391 阅读 · 0 评论 -
XtraBackup/innobackupex 远程备份MySQL
XtraBackup2.2 暂时不支持最新的mysql-5.7 远程备份方法来源https://www.percona.com/forums/questions-discussions/percona-xtrabackup/8816-can-i-backup-remote-databases-from-my-local-server 方法就是:利用导入tar文件流,通过管道压缩,再直接通过管道传翻译 2016-04-26 14:26:55 · 6675 阅读 · 0 评论 -
备忘:Alter Table中: ALTER vs CHANGE vs MODIFY COLUMN 区别
三者区别在于:ALTER COLUMN 改默认值的。Used to set or remove the default value for a column. Example:ALTER TABLE MyTable ALTER COLUMN foo SET DEFAULT 'bar';ALTER TABLE MyTable ALTER COLUMN foo DROP DEFAULT;CHANGE原创 2016-03-15 14:30:10 · 6820 阅读 · 0 评论 -
CentOS-7 下 systemctl 管理 mysql-5.7的不同,配置jemalloc
mysql-5.7 的 mysqld_safe去哪了?在CentOS-7下全面使用systemctl管理服务,包括mysqld,使用ps命令时见不到mysqld_safe。并且安装完mysql-5.7也找不到mysqld_safe安装完初始化mysql基本文件时,也不再使用mysqd_safe, 而是改用 mysqld –initialize 或 –initialize-insecure以上原创 2016-03-16 15:42:09 · 6402 阅读 · 0 评论 -
一个TCP连接池的自我修养-如mysql-client、http-client、redis-client
单服单天过亿请求中,出现0.0001%的500怎么回事?日志中不定时出现 mysql gone away,connect timeout, reset by beer等错,原因不明。access-log同样不定时出现5xx错。感觉MySQL运行正常,没压力,没慢查,sql使用主键查询–不知道问题在哪?连接mysql的代码使用keepalive。这个时候,你是否怀疑过是连接库的问题?一个TC原创 2015-10-09 19:57:59 · 4041 阅读 · 1 评论 -
官方mysql数据跨多硬盘方案,执行重建或修复表时,会使mysqld崩溃
MySQL遇到单硬盘IO性能不足时linux下 可使用软链对目录甚至单个文件解决跨硬盘问题。注意的是,官方并不推荐,官方文档 中说可能遇到不可预知的问题。 实践中,我试过对目录进行建软链,生产环境下,过100G的数据,没问题。对单个*.ibd文件建软链,正常的sql也不会有问题。但alter语句–重建表时,就直接把软链文件当文件复写,即跨硬盘的目标.ibd文件直接被无视。官方的跨硬盘方案是:原创 2015-10-15 12:44:46 · 2594 阅读 · 0 评论 -
通过触发器解决统计,count(*)问题
单表过千万,以按用户分表1024个,count(*)统计还是会慢 所谓的慢,是指高并发了,MySQL就痿了。SAS硬盘,随机IO速率到达10~15M,IO就基本是100%了。这时就呵呵了。CPU有巨大的剩余也没用,内存也帮不上忙,只能SSD才能解决。 所谓通过外问程序--异步事件之类的,去加1,减1地统计结果--好像是一种方案。最终上线后,数据量一大,并发量一大,数据最后出来负数---原创 2015-10-09 20:08:17 · 4632 阅读 · 0 评论 -
[备忘]mysql中varchar中后面的长度能保存几个中文字符-UTF8下
CREATE TABLE `t1` ( `name` varchar(4) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8 上面这个表,name字段只能保存4个utf8字符,即4个中文。insert into t1(name) values('天才我才必有用');结果:mysql> select * from t1;原创 2013-01-17 11:44:58 · 893 阅读 · 0 评论 -
GCC 编译动态库 so文件时,静态链接libmysqlclient.a 与动态链接参数一起使用问题。
直接放结论, 下面是编译一个使用了mysql C API 的 mysql.so 文件(我们的业务中,它是zbx加裁的modules so文件)gcc -fPIC -shared -o mysql.so mysql.c \ -I/usr/include/mysql \ -L/usr/lib64/mysql \ -Wl,-Bstatic -lmysqlclient \ -Wl,原创 2018-01-16 17:44:34 · 2361 阅读 · 0 评论