
MySQL
文章平均质量分 55
ylqmf
这个作者很懒,什么都没留下…
展开
-
MySQL High Availability at Yahoo
I was asked to write a blog post about MySQL High Availability at Yahoo, particularly for writes. Our standard practice is not particularly high-tech, but we’ve been using it for over 4 years now and转载 2012-12-27 15:09:39 · 1342 阅读 · 0 评论 -
linux 下 限制 mongodb 内存占用
原文链接:http://blog.youkuaiyun.com/ylqmf/article/details/8099521多实例下:可以通过绑定cpu,来防止多实例相互干扰。mongodb的内存也可以限制主,防止全部内存都被一个实例占据。#tudou@b2c.xiaomi.comulimit -s 4096 && ulimit -m 31457280 && sudo -u mong原创 2012-10-22 16:58:56 · 17956 阅读 · 1 评论 -
MySQL 5.5 DBA工具 多进程dump 多进程load 多进程备份还原 python 脚本
mysqldump 目前只支持但线程dump,物理备份innodb因为额ibdata又有天生的缺陷,例如将一个实例中的某个库导入到另一个实例中,就比较麻烦了。所以写了这套脚本。适用场景:1 多库多表,尤其是多表数据比较均衡的2 备份和恢复数据瓶颈在于单线程的3 即便多核,强力磁盘iops也无用的4 使用slave来备份数据,原因是此脚本dump的时候上读锁,会阻塞主库原创 2012-09-18 22:11:17 · 7460 阅读 · 2 评论 -
详解 MySQL Replication Error 1032 & 1205
使用MySQL的业务,大多都会用到MySQL的Replication,做读写分离,HA,热备份或者增量都少不了利用主从机制.不过,很多情况下都会报 1032 和 1205 错误.tudou@Gyyx首先1032.Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND;造成1032错误的根本原因是主从数据库数据不一致,导致同步操作原创 2012-03-22 10:37:59 · 20480 阅读 · 3 评论 -
MySQL crash:InnoDB redo log error
InnoDB: Progress in percents: 1120731 9:56:59 InnoDB: Error: page 9 log sequence number 5746244819174InnoDB: is in the future! Current system log sequence number 5706919300319.InnoDB: Your datab原创 2012-07-31 10:31:45 · 9109 阅读 · 0 评论 -
MySQL5.5 real time monitor at linux(centos)——MySQL5.5实时监控基于centos
原文链接:http://blog.youkuaiyun.com/ylqmf/article/details/7878498利用值班时间用python写了个mysql 实时监控脚本,使用前要确认安装python和mysqldb:yum install python MySQL-python -y直接执行脚本就可以了 python monitor.py下面是执行后的结果,硬盘和网卡监控尚未加入:原创 2012-08-17 17:43:08 · 6863 阅读 · 1 评论 -
小米2 发布会前,DBA同事留影
估计DBA组无法参加米2发布会现场活动了,给同事拍照算是留念吧。pcpop网站放出了 小米2信息,说实在的我真不知道米2是不是这样的。不过看到pcpop中手机屏幕左右两边边条很窄,应该靠谱的,因为设计团体提过这个事。本来已经下班了,结果雷总通知电商,明天要做活动,需要DBA一枚。。。原创 2012-08-14 19:04:56 · 2167 阅读 · 2 评论 -
MySQL Cluster 共享权限
MySQL Cluster API节点 中mysql.user 表为MyISAM引擎,所以每个API都要配置权限系统,MySQL已经为我们提供了共享权限脚本。这个脚本主要作用就是将mysql.user 表MyISAM引擎更换为NDBCLUSTER引擎。以 linux - Centos 单机 源码 编译 安装 mysql cluster 7.2.7 source install 为例,执行下原创 2012-08-14 20:25:46 · 1950 阅读 · 0 评论 -
linux - Centos 单机 源码 编译 安装 mysql cluster 7.2.7 source install
原文链接http://blog.youkuaiyun.com/ylqmf/article/details/7795497tudou@xiaomimkdir -p /opt/soft/mysql-cluster-7.2.7tudou@xiaomiCHOST="x86_64-pc-linux-gnu" \CFLAGS=" -O3 \-m128bit-long-double \-m6原创 2012-07-27 22:17:35 · 8031 阅读 · 1 评论 -
mysql 查看已安装的编译参数
mysql 5.5export VISUAL=vimmysqlbugmysql 5.1mysqlbug |grep CONFIG#监控iostat -x 3dstat -cglmpry --tcp#追踪mysql 进程中的所有线程pstack process原创 2012-07-27 14:32:40 · 12360 阅读 · 0 评论 -
MySQL 内存溢出
首先是程序报错:ERROR 1135: Can't create a new thread (errno 12). If you are not out of available memory, you can consult the manual for a possible OS-dependent bug查看日志:key_buffer_size + (read_buffer_size原创 2012-04-19 17:20:02 · 22831 阅读 · 0 评论 -
MySQL测试 5.1 innodb VS innodb_plugin VS innodb_plugin+tcmalloc VS 5.5+tcmalloc
最近在搞mysql测试,实验环境选取限制在2cpu+4GB内存+单硬盘,采用相同的配置文件.相同的业务,现将结果汇报如下:如果你的服务cpu数量少于8core,单硬盘,推荐大家使用高版本的mysql5.1,如果你的服务器性能强劲,特别是在cpu和磁盘吞吐上,那请使用mysql 5.5并启用相应的配置.MySQL5.1 innodb 1.0Benchmark DBD suite: 2.1原创 2012-04-19 12:54:58 · 3772 阅读 · 1 评论 -
MySQL limit 优化方案
准备数据:tudou@gyyxmysql> show create table tmp\g+-------+-----------------------------------------------------------------------------------------------------------------------------------------------原创 2012-04-19 17:51:25 · 6190 阅读 · 0 评论 -
近期 MySQL 总结binlog-format=row 的应用场景和mysql shutdown
1 row 的应用场景数据中心的核心库压力过大,所以从原来的数据中心服务提出来,做成单独的数据服务器,然后其他业务通过mysql replication 复制这个库,此时出现了一个问题,这个核心服务上有些sql是跨库操作,而其他业务库都有自己的一系列数据库,这些库的数据都不一样,只有核心库的数据是一致,所以只能使用row模式,单独复制核心数据库.2 mysql shutdown当我们使原创 2012-04-18 12:15:42 · 18203 阅读 · 13 评论 -
centos cmake 安装 mysql-5.5.16 附配置文件
mysql从5.5之后源码安装需要使用cmake:==================================================To install MySQL from source, your system must have the following tools, regardless of installation method:CMake,原创 2011-10-31 12:31:34 · 13993 阅读 · 0 评论 -
mysql unix_socket文件丢失处理 mysql.sock被删除
为了数据库安全,限制了mysql中root用户只能本地登录,其他用户不得拥有授权权限。结果悲剧了,登录到一台服务器上发现unix_socket文件不见了。root用户无法登陆。怎办?情急之下请出DBA用户伪造一个root@127.0.0.1,原地复活。mysql> select user,host,password from user;+----------+-----------+--原创 2013-01-22 21:28:21 · 16150 阅读 · 0 评论 -
MySQL InnoDB内部结构图
转载 2013-01-25 17:01:29 · 2832 阅读 · 1 评论 -
Percona Xtrabackup MySQL 全备
#!/bin/shBACKUP_TIME=`date +%Y-%m-%d-%H-%M-%S`BACKUP_SOCK=/tmp/mysql3306.sockBACKUP_CNF=/etc/my3306.cnfBACKUP_USER=userBACKUP_PWD=123456BACKUP_DB=employeesBACKUP_DIR=/data/backup/mysql/backup3原创 2013-03-24 17:29:55 · 13800 阅读 · 1 评论 -
mysql checksum table golang
package mainimport ( "bytes" "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" "io/ioutil" "regexp" "strconv" "strings" "sync")var wg sync.WaitGrouptype DBinfo struct { user原创 2016-07-01 17:15:00 · 995 阅读 · 0 评论 -
mysql 事务 rollback 失效
最近支付业务发生了一件怪事,在一个事务 失败后,调用rollback,发现只rollback 了最后一条sql。开发查了很久,发现是网络抖动,造成第一次创建链接的 begin 丢掉了,后面再重连后就变成autocommit了,这样就造成rollback的时候前面的sql 全都没有rollback。只能是在 begin 的时候加一个变量将应用服务器的时间戳打到mysql 服务器上,后原创 2014-09-23 21:43:07 · 4947 阅读 · 0 评论 -
MySQL-5.5.25 centos 一键安装脚本 auto install
原文链接:http://blog.youkuaiyun.com/ylqmf/article/details/8064356工作中经常要要在不同的机器上安装mysql,特意写了个一键安装脚本。安装包在这里http://kuai.xunlei.com/d/VWKMOOFSUWGB,直接解压,运行install.sh 就可以了。安装目录和my.com部分要根据自己的情况选择使用。#!/bin/sh原创 2012-10-12 14:06:25 · 11130 阅读 · 0 评论 -
MySQL 5.5 keepalived + haproxy + MHA 自动容灾
vip 192.168.161.80mysql master 192.168.161.81mysql backup 192.168.161.82(haproxy master)mysql slave 192.168.161.83 (haproxy backup)keepalived安装:yum -y install ipvsadm openssl-devel l原创 2013-02-19 21:36:50 · 12107 阅读 · 14 评论 -
MySQL 线上执行大事务 or 锁表操作 详解
很多情况下,DBA需要在线执行一些无法在线进行的操作。这句话说着很绕口,比如给某个核心级表加一列或者执行修改操作,此时不但主库从库要长时间锁表,主从延迟也会变大。那么应该如何操作呢?很简单,使用SET SESSION SQL_LOG_BIN= {0|1}在只在本地操作,就可以了,可以先在备库执行,然后切换主备,在原主库再执行。然后在各个从库分别执行。考虑的变更操作的具体性,到底是先在主库执行还原创 2012-08-11 19:14:21 · 8719 阅读 · 0 评论 -
使用cgroup 限制进程的磁盘io
cat /etc/cgconfig.conf ## Copyright IBM Corporation. 2007## Authors: Balbir Singh balbir@linux.vnet.ibm.com># This program is free software; you can redistribute it and/or modify it原创 2015-01-27 22:45:09 · 8786 阅读 · 2 评论 -
MySQL分组排序取前N条记录以及生成自动数字序列--group by 后 limit 外加 rownumber
同事提了一个需求,要求按照某列分组,然后将各组的前几条抽取出来。表结构CREATE TABLE `total_freq_ctrl` ( `time` int(10) unsigned NOT NULL, `machine` char(64) NOT NULL, `module` char(32) NOT NULL, `total_flow` int(10) unsigned原创 2014-09-02 14:46:12 · 34586 阅读 · 3 评论 -
backup mysql for xtrabackup with xbstream and lz4
需要临时为mysql添加一个实例,使用xtrabackup最简单快速。在现有数据节点上:/home/work/app/xtrabackup-2.2.3/innobackupex --ibbackup=/home/work/app/xtrabackup-2.2.3/xtrabackup --parallel=8 --defaults-file= ${BACKUP_CNF} --s原创 2014-09-01 20:52:25 · 15497 阅读 · 1 评论 -
没有索引也可以快速查询
仓储系统有张表,4000万数据,按照创建时间清理。创建时间上没有索引,不过数据是按照创建时间一条条的insert的。这样就写了个脚本按照id升序每次处理2000个,然后删除掉。这样只要扫描到的数据满足时间条件,速度和有索引是一样的。一旦处理到不满足时间条件的数据,整个sql就会超时了,这样就不再处理,第二天再处理了满足条件的。没有索引一样快。原创 2014-04-18 15:59:04 · 14938 阅读 · 1 评论 -
TOO MANY LOCKS PRINTED FOR THIS TRX: SUPPRESSING FURTHER PRINTS
数据库中发现:TOO MANY LOCKS PRINTED FOR THIS TRX: SUPPRESSING FURTHER PRINTS同时R&D同学也抱怨经常锁等待超时。赶紧去看innodb status 怎么说:Trx read view will not see trx with id >= 4130470E, sees ---TRANSACTION 413041D4,原创 2013-11-15 12:35:21 · 15286 阅读 · 0 评论 -
求当前时间与当天零点的秒差。
SELECT MOD(UNIX_TIMESTAMP(NOW())+28800,86400),UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(DATE(NOW()))=====================求当前时间与当天零点的秒差。原创 2013-08-10 09:06:34 · 15332 阅读 · 0 评论 -
mysqldump: Couldn't execute 'show events': Cannot proceed because system tables used by Event Schedu
最近将老版本的mysql 实例倒入 percona 5.5.30,使用的是线上的全备,结果将mysql 库下的表也倒入了,这下可悲剧了,备份报错。没办法,将mysql库下的数据倒出来,清空,再倒入percona的表结构,最后将数据重新灌进去,都不行,妥妥的要求重启。。。没辙只能启用切换,主备从一通切+重启才搞定。原创 2013-07-04 16:00:02 · 15692 阅读 · 0 评论 -
MySQL 5.5 权限导出脚本
#!/bin/shbase_dir='/opt/soft/mysql'mysql_user='root'mysql_pwd='123456'mysql_socket='/tmp/mysql.sock'msyql_grants='/tmp/mysql_grants.sql'result=`${base_dir}/bin/mysql -u${mysql_user} -p${mysql_原创 2013-06-03 23:40:54 · 13915 阅读 · 0 评论 -
MySQL Replication and Time Zones
mysql使用 replication 做主从,如果从上添加触发器,insert 语句有 now()时,需要在服务器启动项中添加default-time-zone。否则会引发时区问题。16.4.1.31. Replication and Time ZonesThe same system time zone should be set f原创 2013-05-21 18:09:19 · 13662 阅读 · 0 评论 -
MySQL update && select ,update的同时select,和for update 语句说再见。
MySQL update && selectCREATE TABLE `testupdate` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `val` bigint(20) NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=2 DE原创 2013-04-23 17:35:17 · 14871 阅读 · 1 评论 -
Python中的long类型
昨天晚上重读了下python,当读到数据类型的章节时,作者说在python中可以用long类型以便士为单位计算美国国债....让我想起10年前第一次读.netframework时,介绍64bit的优势,可以直接计算美国的国债...中国人引以为傲 的是GDP,美国人引以为傲的是国债.....真理永远站在少数人的一边当大多数人都认识到一条真理之后,它就不再是真理那叫常识原创 2012-03-21 09:38:41 · 24799 阅读 · 0 评论 -
MySQL 5.5 创建 线性Hash分区表,并将表文件分布到不同的物理磁盘上
应用环境OLAP,请不要再直接在OLTP环境下参考要合并不同服务器上的数据,考虑到以后会不断添加游戏区组服务器,所以使用mysql5.5的LINEAR HASH分区,当添加的区组超过hash分区后再添加分区,停机维护时再将新添加的分区表文件分布到其他物理分区上去.下面是建表SQLDROP TABLE IF EXISTS gyyx_middle.`wd_char_info`;tud原创 2012-03-15 16:09:05 · 13590 阅读 · 2 评论 -
MySQL 生成 时间轴
DROP PROCEDURE IF EXISTS pro_dim_date;tudou@GyyxCREATE PROCEDURE pro_dim_date(IN bdate DATE,IN edate DATE)BEGINDECLARE var DATE DEFAULT bdate;DECLARE evar DATE DEFAULT DATE_ADD(edate,INTERVAL 1 D原创 2012-03-14 18:07:38 · 11016 阅读 · 0 评论 -
MySQL 自增ID生成器
CREATE TABLE sequence(tablename VARCHAR(64) NOT NULL,id BIGINT UNSIGNED NOT NULL DEFAULT 1,PRIMARY KEY (tablename)) ENGINE=INNODB;CREATE PROCEDURE pro_sequence(tname VARCHAR(64))BEGININSERT原创 2011-11-10 19:12:40 · 12447 阅读 · 0 评论 -
MySQL 复制 CHANGE MASTER TO
mysql> CHANGE MASTER TO -> MASTER_HOST='master_host_name', -> MASTER_USER='replication_user_name', -> MASTER_PASSWORD='replication_password',转载 2011-10-10 20:29:36 · 26819 阅读 · 2 评论 -
MySQL 启动失败
今天 安装新数据库 mysql-5.5.16 结果忘记配置一个目录,导致mysql启动失败111108 16:19:54 mysqld_safe Starting mysqld daemon with databases from /home/soft/mysql/data/opt/soft/mysql/bin/mysqld: File '/opt/soft/mysql/binlo原创 2011-11-08 19:06:09 · 11947 阅读 · 0 评论 -
MySQL 测试 sql-bench 出错
./run-all-tests --user=root --password=123456Can't locate DBI.pm in @INC (@INC contains: /usr/local/lib/perl5 /usr/local/share/perl5 /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/原创 2011-10-31 15:40:59 · 10083 阅读 · 0 评论