
mysql
林震南
笨小孩,攒钱,投资,争取早日财务自由,回老家教书育人
展开
-
线上48组nodes一组db0101主库down了之后的failover处理过程.
路上接到call,db0101 Down了,报错现象:(1) 应用页面500,503,504 Error 错误(2) email报警db0201 is down now!1 症状初步判断赶快ping 20.222.21.173, 报unreachle的错误. 赶紧call 系统管理员以及硬件工程师,让他们登陆物理主机看看出了什么故障.这里赶紧去mmm control服务器...原创 2019-06-14 09:55:07 · 10269 阅读 · 0 评论 -
MySQL线上 MM结构架构一次手动failover的过程
【】从11切换到10线上10、11 管理cat /proc/drbd正常状态是:[root@odb-m10 ~]# cat /proc/drbdversion: 8.3.2 (api:88/proto:86-90)GIT-hash: dd7985327f146f33b86d4bff5ca8c94234ce840e build by root@odb-m10.bg.com, 2011-0...原创 2019-06-14 09:54:37 · 10242 阅读 · 0 评论 -
清理8组nodes中表的历史数据,平均每个node中的表有1.5亿条记录,需要根据date_created字段清理8000W数据记录,这个字段没有索引。
清理8组nodes中表的历史数据,平均每个node中的表有1.5亿条记录,需要根据date_created字段清理8000W数据记录,这个字段没有索引。环境介绍线上磁盘空间不足,truncate了许多能动的表,磁盘空间还是占据了87%,我们的nagios报警阀值是80%。所以不断的还会收到email以及短信报警。需要根据时间字段date_created清理,但是在设...原创 2019-06-13 00:02:33 · 10182 阅读 · 0 评论 -
MemSQL学习笔记-类似MySQL的数据库
http://gigaom.com/cloud/ex-facebookers-launch-memsql-to-make-your-database-fly/-- 多主-从http://www.mysqlops.com/2012/02/14/diy_multi_master_replication.htmlhttp://www.cnblogs.com/liuhao/archive/2012/...原创 2019-06-11 00:31:44 · 10343 阅读 · 0 评论 -
MySQL有关1042 Can’t get hostname for your address的问题分析解决过程
[Comment 1]前同事企鹅上面说他安装的mysql 5.5,发现用mysql客户端远程连接的时候,报1042-Can’t get hostname for your address错误,但是权限已经grant了并且grant成功了。这个报错的意思是“您的地址无法获得主机名”,我就想到了skip-name-resolve参数。官方文档: --skip-name-resolv...原创 2019-06-11 00:30:03 · 10343 阅读 · 0 评论 -
MySQL 存储过程带in和out参数以及PHP,PB如何调用的小例子
最简单的例子:mysql> DELIMITER $$mysql> USE test $$Database changedmysql> DROP PROCEDURE IF EXISTS `sp_add`$$Query OK, 0 rows affected (0.00 sec)mysql> CREATE PROCEDURE sp_add(a INT, b I...原创 2019-06-11 00:29:50 · 10266 阅读 · 0 评论 -
MySQL单机load过高问题讨论
有一个朋友问我: "hi,我想问下你们遇到单机load过高的情况 采取什么紧急措施啊?"我问他是不是mysql db server?他说是。我给他如下建议:1 先看下是不是mysqld进程造成的load高?2 如果是的话,去看下当前线程有没有比较慢的sql朋友再问: 嗯 都没有呢,这个如果由于业务的原因导致load高呢我给出自己的建议:1 并发量...原创 2019-06-10 00:10:42 · 10318 阅读 · 0 评论 -
手机在线更新系统MySQL数据库服务器参数优化mycnf,16G内存8核CPU,
业务场景: 后台支持手机在线更新系统,db服务器内存16G,8核,dell的pc服务器。qps: 200个左右tps: 1个左右 一分钟50几个sort_buffer_size = 32M 大了, 8M即可read_buffer_size = 32M 大了,8M即可read_rnd_buffer_size = 16M大了,8M即可table_open_cache = 512小了,建议...原创 2019-06-10 00:10:21 · 10115 阅读 · 0 评论 -
修改MySQL的时区,涉及参数time_zone
首先需要查看mysql的当前时区,用time_zone参数mysql> show variables like '%time_zone%'; +------------------+--------+| Variable_name | Value |+------------------+--------+| system_time_zone | CST |...原创 2019-06-10 00:10:07 · 13647 阅读 · 0 评论 -
问题分析探讨 --大约有700W数据的表,把当天的10W数据select导入新表,整个原来的表就锁死
Sun shine 16:15:55帅哥 我有个手机表 大约有700百数据,,每天新增 大约五万,并且新也有update 大约10万 然后 我每晚 把当天的数据select 导入一个新表中的时候 整个表就锁死了, 有什么好的解决方案吗黄杉() 17:32:18你的导入方式是?刚才在忙你的导入方式或者大概过程是怎么样的?Sun shine 17:43:39insert...原创 2019-06-10 00:09:49 · 10390 阅读 · 0 评论 -
MySQL线上600W纪录的MyISAM表,要把存储引擎改为innoDB,一alter表就立马锁死的问题探讨
行业内部朋友企鹅上问:Sun Shine:我线上有个数据库大约600百万数据我想把存储引擎改为innoDB, 现在表平均每分钟有50个插入,已修改表就立马锁死,有什么好的办法吗?黄杉 11:27:31那肯定会锁表啊,你全天业务低峰期是在哪个时间短啊? ltertabletbnameengine=innodb;就是全锁表的Sun shine11:28...原创 2019-06-09 00:16:08 · 10625 阅读 · 0 评论 -
MySQL笔记整理之 用数字辅助表实现复杂的列变行
某天,QQ上一个圈子内的网友发来一个求助信息 :PropID name Amount3 元宝 22 乐豆 3能否用一条sql 写成输出,就是复制对应Amount 的条数 :PropID name3 元宝3 元宝2 乐豆2 乐豆2 乐豆[注释]:3 元宝 2注意, 最后一列是2...原创 2019-06-09 00:12:12 · 10125 阅读 · 0 评论 -
MySQL创建用户带SSL认证,并且有SUBJECT和ISSUER的时候,报错[Note] X509 subject mismatch:
1 简单的SSL是OK的:用简单的SSL的验证,分配帐号mysql> GRANT ALL PRIVILEGES ON test.* TO 'test'@%· IDENTIFIED BY 'test'REQUIRE SSL;然后在客户端登陆:[aaaaaaaaaaa@XXnintmydbc000ctl ssl]$ /opt/mysql/product/mysql/bin/mys...原创 2019-06-09 00:10:58 · 10726 阅读 · 0 评论 -
DATE_SUB(NOW(),INTERVAL 5 MINUTE)与DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 5 MINUTE),'%Y-%m-%d %H:%M:%S')
朋友发来求助信息:[root@CactiEZ ~]# time mysql -h 172.22.10.32 -ucacti -P3316 -pcacti -e "select count(*) from order.tbl_tieyou_order where order_time > DATE_SUB(NOW(),INTERVAL 5 MINUTE);" -N+-----+| 1...原创 2019-06-08 10:02:45 · 10943 阅读 · 0 评论 -
xtrabackup: Error: Please set parameter 'datadir',innobackupex: fatal error: no 'mysqld' group in My
-- 报错:[root@5.5.25a]# innobackupex --rsync --user=backupusertmp --password=backupusertmp /mysqldata/shared/tmpbackupInnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oyand ...原创 2019-06-08 10:02:04 · 10384 阅读 · 0 评论 -
MySQL EXPLAIN 命令详解学习
MySQL EXPLAIN 命令详解MySQL的EXPLAIN命令用于SQL语句的查询执行计划(QEP)。这条命令的输出结果能够让我们了解MySQL 优化器是如何执行SQL 语句的。这条命令并没有提供任何调整建议,但它能够提供重要的信息帮助你做出调优决策。1 语法MySQL 的EXPLAIN 语法可以运行在SELECT 语句或者特定表上。如果作用在表上,那么此命令等同于DESC 表命令...原创 2019-06-08 09:35:32 · 10669 阅读 · 0 评论 -
MySQL 存储过程例子,不能在if else里面用begin end否则会报错Error Code : 1064!
Error Code : 1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near报错是因为mysql的procedure里面if else语句里面, 用了begin end...原创 2019-06-08 09:35:09 · 10803 阅读 · 0 评论 -
Effective MySQL之SQL语句最优化--索引
1 两个索引取并集组合-- 执行命令:ALTER TABLE album ADD INDEX name_release (name,first_released);EXPLAIN SELECT a.name, ar.name,a.first_releasedFROM album aINNER JOIN artist ar USING (artist_id)WHERE a.name...原创 2019-06-08 08:51:08 · 10266 阅读 · 0 评论 -
Error No.2003 Can't connect to MySQL server on '10.88.49.122' (10061)
Error No.2003 Can't connect to MySQL server on '10.88.49.122' (10061),报错 截图如下:在CMD中运行telnet试试看,报错:win7中运行telnet出错:’telnet’ is not recognized as an internal or external command,operable prog...原创 2019-06-08 08:24:12 · 10670 阅读 · 0 评论 -
学习笔记之 Effective MySQL之SQL语句最优化--索引
1 两个索引取并集组合执行添加索引命令:ALTER TABLE album ADD INDEX name_release (name,first_released);EXPLAIN SELECT a.name, ar.name,a.first_releasedFROM album aINNER JOIN artist ar USING (artist_id)WHERE a.name ...原创 2019-06-07 18:24:56 · 10261 阅读 · 0 评论 -
mysql通过ssl的方式生成秘钥
mysql ssl 生成秘钥1 check ssl是否已经开启mysql> show variables like '%ssl%';+---------------+----------+| Variable_name | Value |+---------------+----------+| have_openssl | DISABLED || have_ssl...原创 2019-06-07 14:56:45 · 12557 阅读 · 3 评论 -
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your
执行建库命令:mysql> create database union;显示报错信息:ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use n...原创 2019-06-07 14:51:56 · 24389 阅读 · 4 评论 -
笔记整理之 SQL优化,百万级2张表关联,从40分钟到3秒的历程
表结构如下:CREATE TABLE `deviceback` (`id` int(11) NOT NULL AUTO_INCREMENT,`imei` varchar(100) NOT NULL COMMENT '手机唯一标识',`mid` varchar(50) DEFAULT NULL,`mac` varchar(100) DEFAULT NULL,`APNType` varch...原创 2019-06-07 14:36:05 · 10457 阅读 · 1 评论 -
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Could not find
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: ‘Could not find first log file name in binary log index file’当碰上这种错误的时候, 一般都是直接从库重新init一次, 因为 binlog file断档了。今天prod...原创 2019-06-07 14:32:40 · 10308 阅读 · 0 评论 -
MySQL服务器性能(通过Sysbench测试cpu、io、内存以及mysql服务等)
– Sysbench测试Sysbench的安装请参考:http://blog.csdn.net/mchdba/article/details/89512891 CPU测试sysbench采用寻找最大素数的方式来测试CPU的性能[root@xx sysbench-0.4.12]# sysbench --test=cpu --cpu-max-prime=2000 runsysbench 0....原创 2019-06-06 23:47:47 · 10568 阅读 · 0 评论 -
mysqlslap 性能测试工具
– ===================– mysqlslap 性能测试工具– ===================常用参数–concurrency #代表并发数量,多个可以用逗号隔开。例如:–concurrency=50,200,500–engines #代表要测试的引擎,可以有多个,用分隔符隔开。例如:–engines=myisam,innodb,memory–iterat...原创 2019-06-06 23:47:15 · 10146 阅读 · 0 评论 -
MySQL DB Server 上面安装 sysbench 作压力测试
2015-02-14记录:附带最新的安装记录(centos6.4):一:bazaar安装方式(扩展后的多表测试)1、安装bazaar工具yum install bzr2、获取源码bzr branch lp:sysbench3、编译安装cd sysbench/;./autogen.sh./configure --prefix=/usr/local/sysbench --with-m...原创 2019-06-06 23:46:20 · 10286 阅读 · 0 评论 -
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your
mysql> create table country(-> country_id smallint unsigned not null auto_increment,-> country varchar(50) not null,-> last_update timestamp not null default current_timestamp on update...原创 2019-06-06 23:45:08 · 11468 阅读 · 0 评论 -
MySQL中3种清除binlog的方法
1 mysql命令purgemysql> purge master logs to “mysql-bin.000410”;Query OK, 0 rows affected (3.71 sec)2 手动rm清理 >mysql delete log onlinerm -rf mysql-bin.00040*;vim mysql-bin.log.index清除掉里面的m...原创 2019-06-04 09:05:25 · 11757 阅读 · 0 评论 -
笔记整理之 想从事DBA工作,该挑选哪一款数据库产品
知乎问这原题:现在主流数据库有很多,作为一个学生以后想从事dba的工作,应该学哪一种呢?标题修改为:想从事DBA工作,该如何挑选一款数据库产品mysqlops回答:1. 基础知识不管你想选择哪种数据库产品,有些基础理论知识必须打扎实,尤其是:数据库系统概论、Linux操作系统、SQL标准语言、数据结构(重点排序算法)、开发语言(至少懂几款脚本语言,SHELL必须要会,其次最好能再掌握一...原创 2019-06-04 00:12:11 · 10224 阅读 · 0 评论 -
笔记整理之 mysql CMake Error记录
[root@localhost mysql-5.6.10]# time cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql56 -DMYSQL_DATADIR=/data56 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR==/data56/mysql.sock -DMYSQL_USER=mysql...原创 2019-06-04 00:06:29 · 10245 阅读 · 0 评论 -
笔记整理之 innobackupex-1.5.1: Too many command line arguments
[root@xxxxxxopt]# /usr/bin/innobackupex-1.5.1 –-apply-log /opt/back_data/ --defaults-file=/opt/mysql/product/mysql/etc/my.cnfinnobackupex-1.5.1: Too many command line arguments还没有找到问题所在, 去官网...原创 2019-06-04 00:00:20 · 11048 阅读 · 0 评论 -
笔记整理之 MySQL内存计算方式
-- 计算MySQL的内存峰值公式,计算所有的连接满了的情况下:select(@@key_buffer_size + @@query_cache_size + @@tmp_table_size + @@innodb_buffer_pool_size + @@innodb_additional_mem_pool_size + @@innodb_log_buffer_...原创 2019-06-03 00:08:25 · 10294 阅读 · 0 评论 -
笔记整理之 MySQL复制--最快的从库搭建方法(tar包)
最快的从库搭建方法0,准备从库第一次数据备份,临时锁所有表开启窗口1:mysql> flush tables with read lock;Query OK, 0 rows affected (0.00 sec)mysql> show master status; +------------------+----------+----------...原创 2019-06-03 00:05:32 · 10182 阅读 · 0 评论 -
笔记整理 之 ERROR 1336 (0A000)问题记录
且看执行存储过程报错:mysql> DELIMITER //mysql> CREATE PROCEDURE ps(IN table_name VARCHAR(200))-> BEGIN-> SET @newname = table_name;-> SET @s = CONCAT('create table ',@newname,'(resourceid va...原创 2019-06-02 01:43:58 · 10664 阅读 · 0 评论 -
笔记整理之 CentOS6.0上面安装Percona5.5版MySQL
在编译安装 MySQL 5.5.x 之前,需要最少安装的包有:bison,gcc、gcc-c++、cmake、ncurses-devel,安装这些依赖包后,把原来解压出来的mysql源码目录删除掉,再重新解压出来,再去编译.安装cmake软件:tar xzvf cmake-2.8.3.tar.gz./bootstrap gmake gmake install./configur...原创 2019-06-02 01:41:25 · 10084 阅读 · 0 评论 -
笔记整理之 MySQL事务控制语句
MySQL事务控制语句在mysql命令行的默认下,事务都是自动提交的,sql语句提交后马上会执行commit操作。因此开启一个事务必须使用begin,start transaction,或者执行 set autocommit=0;可以使用的事务控制语句start transction | begin : 显示的开启一个事务commit (commit work)commit work与c...原创 2019-06-01 09:57:02 · 10599 阅读 · 0 评论 -
笔记整理 之 快速Kill 卡死的慢SQL Shell代码脚本
某个初级dba误删index,mysql漫山遍野全是10S以上的慢sql,mysql服务被hang住了,而且慢sql不断在增加中,如果手动在mysql界面kill的话,根本来不及,这个时候,shell就必须要出手了,如下的shell脚本,大家可以参考:#It is used to kill processlist of mysql sleep#!/bin/shwhile :...原创 2019-06-01 09:45:32 · 10286 阅读 · 0 评论 -
读书笔记整理之 MySQL Innodb 事务的实现
reference:MySQL技术内幕 Innodb存储引擎1、Write-Ahead Logging ,WAL:预写日志方式【1】Redo Log在Innodb存储引擎中,事务日志是通过redo和innodb的存储引擎日志缓冲(Innodb log buffer)来实现的,当开始一个事务的时候,会记录该事务的lsn(log sequence number)号; 当事务执行时...原创 2019-06-01 09:39:42 · 10435 阅读 · 0 评论 -
笔记整理之 MySQL服务器Swap满了100%导致db很慢很卡
MySQL服务器Swap满了100%导致db很慢很卡DB服务器会产生swap呢?假设我们的物理内存是12G,swap是3G。如果MySQL本身已经占用了10G物理内存,而同时其他应用程序或者系统进程又需要3G内存,这时候操作系统就可能把MySQL所拥有的一部分地址空间映射到swap上去,有可能产生swap的操作事件:产生的主要原因:1 copy一个大文件,比如上百G的...原创 2019-06-01 09:24:24 · 18436 阅读 · 0 评论