
MYSQL
文章平均质量分 65
lovely可爱欧辰
余好读书,乐思善疑。有过目不忘之能,亦有掩卷即忘之病,故尝攥文以记之。
展开
-
NUMA的取舍与优化设置
在os层numa关闭时,打开bios层的numa会影响性能,QPS会下降15-30%;在bios层面numa关闭时,无论os层面的numa是否打开,都不会影响性能。安装numactl: #yum install numactl -y #numastat等同于 cat /sys/devices/system/node/node0/numastat,在/sys/devices/system/node/文件夹中记录系统中的所有内存节点的相关详细信...原创 2020-10-13 10:19:42 · 2453 阅读 · 0 评论 -
xtrabackup压缩备份多线程备份(lz4,pigz)全详解
常用备份:目前较新的:percona-xtrabackup-2.4.11-1.el6.x86_64.rpm配置percona的yum源。yum install epel-releaseyum install libev qpressyum install perl-DBD-MySQLyum install percona-xtrabackup-2.4.11-1.el6.x86_64.rpminnobackupex备份需要的权限:操作系统层: 需要有对data目录有读,写及可执行权..原创 2020-09-22 15:21:24 · 2775 阅读 · 0 评论 -
修改大表字段属性报主键冲突
对一个200多万记录的大表执行alter操作,结果报了Duplicate entry XXX for key 'PRIMAY'这是由于MYSQL的online DDL 特性导致的。 参考https://blog.youkuaiyun.com/finalkof1983/article/details/88355314可以使用ALGORITHM=COPY------ copy表示放弃online DDL的方式,执行DDL的时候会创建临时表LOCK=SHARED - ----对操作表加上S锁,不阻塞读...原创 2020-09-14 14:12:57 · 504 阅读 · 0 评论 -
MySQL的GTID复制与传统复制的相互切换
MySQL的GTID复制与传统复制的相互转换 1. GTID复制转换成传统复制 1.1 环境准备 1.2 停止slave 1.3 查看当前主从状态 1.4 change master 1.5 启动主从复制 1.6 在线关闭主从服务器的GTID 2. 传统复制转换成GTID复制 2.1 环境准备 2.2 将enforce_gtid_consistency设置为warn 2.3 将enforce_gtid_consistency设置为on转载 2020-09-01 16:33:14 · 288 阅读 · 0 评论 -
实战MySQL升级的最佳方法
这篇文章给大家从理论到实战详细分享了MySQL升级的最佳方法,有需要的朋友跟着学习操作下吧。MySQL5.7新增了不少新功能,比如:Online DDL、多源复制、增强半同步、表空间传输、sys 库、Group Replication等。最近终于等到了一个机会,将MySQL升级到5.7,很是兴奋不已。MySQL升级的概述MySQL升级的实质:对数据字典的升级数据字典有:mysql、information_schema、performance_schema、sys schema。MyS转载 2020-08-28 11:12:36 · 387 阅读 · 0 评论 -
MySQL5.6 Waiting for Commit Lock
mysql Bug#19843808 自动修复记录MySQL5.6和Xtrabackup之间存在一个bug,这个bug在5.6.23中已经修复。Xtrabackup备份的时候执行flushs tables with read lock和show slave status会有可能和SQL Thread形成死锁,导致SQL Thread一直被卡主,STOP也没有用,Kill我们测试会丢失数据,只有Restart Server才行。原因是SQL Thread的DML操作完成之后,持有rl...转载 2020-08-04 11:46:33 · 771 阅读 · 0 评论 -
mysql中 !40000 DROP DATABASE IF EXISTS `top_server` 这中注释有什么作用?
需求描述: 今天在进行mysqldump实验,使用--add-drop-databases参数,于是在生成的SQL文件中,就出现了. /*!40000 DROP DATABASE IF EXISTS `top_server`*/;这种类似于注释的内容,查询了一下 在这里记录下.操作过程:1.使用--add-drop-database参数进行数据库的备份[mysql@redhat6 MysqlDb_Backup]$ mysqldump -uroot -p --single-tr转载 2020-05-27 16:58:12 · 779 阅读 · 0 评论 -
同步一张表、复制过滤设置
一、缘由 据测试要求,需要把线上一张股票信息的表实时同步到测试环境,那么干吧,这次不复制库,单独复制表。二、解决办法 可以按照同步(复制)库的方法来,在salve端设置 my.cnf,replicate-wild-do-table = 99cjadmin.99cj_stock_dynamic,这么设置后主数据库所有的binlog都会复制到从数据库,而从数据库SQL线程在读取relay log的时候只筛选99cjadmin.99cj_stock_dynamic这张表的事务,并应用.转载 2020-05-09 16:58:36 · 260 阅读 · 1 评论 -
MySQL sysdate()函数 不走索引的问题
MySQL SYSDATE函数介绍下面说明了SYSDATE()函数的语法:SYSDATE(fsp);如果函数用于字符串上下文或YYYYMMDDHHMMSS格式,则SYSDATE()函数将返回当前日期时间,格式为“YYYY-MM-DD HH:MM:SS”的值,以防在函数用于数字上下文。SYSDATE()函数接受一个可选参数fsp,它确定结果是否应该包含从0到6的小数秒精度。请...转载 2020-04-28 14:43:15 · 1308 阅读 · 0 评论 -
MySQL服务器端&客户端常见错误
客户端1.ERROR 2013 (HY000) at line 1: Lost connection to MySQL server during query使用select 一个大表,query的过程中被主库kill掉会出现下面错误2.ERROR 2006 (HY000): MySQL server has gone away如果超过wait_timeout或者interacti...转载 2019-10-17 15:45:47 · 547 阅读 · 0 评论 -
更改MySQL数据库目录位置
更改MySQL数据库目录位置MySQL默认的数据文件存储目录为/var/db/mysql。由于当初在规划/var目录的时候规划太小,所以现要把MySQL目录移到/usr/local/data/mysql/下:1、/usr/local目录下建立data目录mkdir /usr/local/data2、把MySQL服务进程停掉:mysqladmin -u转载 2012-08-27 22:41:51 · 802 阅读 · 0 评论 -
linux平台及windows平台mysql重启方法
linux平台及windows平台mysql重启方法 Linux下重启MySQL的正确方法: 1、通过rpm包安装的MySQL service mysqld restart 2、从源码包安装的MySQL // linux关闭MySQL的命令 $mysql_dir/bin/mysqladmin -uroot -p shutdown转载 2012-08-27 22:45:30 · 944 阅读 · 0 评论 -
死锁:多线程同时删除唯一索引上的同一行
1 死锁问题背景 11.1 一个不可思议的死锁 11.1.1 初步分析 31.2 如何阅读死锁日志 32 死锁原因深入剖析 42.1 Delete操作的加锁逻辑 42.2 死锁预防策略 52.3 剖析死锁的成因 63 总结转载 2015-07-23 16:25:23 · 5393 阅读 · 3 评论 -
深入mysql "ON DUPLICATE KEY UPDATE" 语法的分析
mysql "ON DUPLICATE KEY UPDATE" 语法如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE;如果不会导致唯一值列重复的问题,则插入新行。例如,如果列 a 为 主键 或 拥有UNIQUE索引,并且包含值1,则以下两个语句转载 2015-08-20 14:27:58 · 537 阅读 · 0 评论 -
mysqld与mysqld_safe的区别
文章1:直接运行mysqld程序来启动MySQL服务的方法很少见,mysqld_safe脚本会在启动MySQL服务器后继续监控其运行情况,并在其死机时重新启动它。用mysqld_safe脚本来启动MySQL服务器的做法在BSD风格的unix系统上很常见,非BSD风格的UNIX系统中的 mysql.server脚本其实也是调用mysqld_safe脚本去启动MySQL服务器的。它通常做如下事转载 2015-09-25 09:01:44 · 556 阅读 · 0 评论 -
MySQL查询报错ERROR:No query specified
mysql下抛出error:[sql] view plaincopyerror:no query出现此错误是sql不合法原因:如:select * from abc\G;或者select * from abc;;解决方案:\G后面不需要再加分号;第二种情况不要重复加分号。原创 2015-09-07 13:01:43 · 12027 阅读 · 1 评论 -
【MySQL】查看MySQL配置文件路径及相关配置
(1)关于配置文件路径有时候,我发现虽然尝试修改了配置文件的一些变量,但是并没有生效。后来才发现原来是因为修改的文件并非MySQL服务器读取的配置文件。如果不清楚MySQL当前使用的配置文件路径,可以尝试这样查看:从上图可以看出, 服务器首先会读取/etc/my.cnf文件,如果发现该文件不存在,再依次尝试从后面的几个路径进行读取。(2)关于配置转载 2015-09-20 09:49:34 · 2140 阅读 · 0 评论 -
15个实用的管理mysql的mysqladmin命令
15 Practical Usages of Mysqladmin Command For Administering MySQL Server In all the 15 mysqladmin command-line examples below, tmppassword is used as the MySQL root user password. Please change t原创 2015-09-20 14:25:53 · 2774 阅读 · 0 评论 -
MYSQL管理之主从同步管理
MYSQL管理之主从同步管理MYSQL主从同步架构是目前使用最多的数据库架构之一,尤其是负载比较大的网站,因此对于主从同步的管理也就显得非常重要,新手往往在出现主从同步错误的时候不知道如何入手,这篇文章就是根据自己的经验来详细叙述mysql主从的管理。MYSQL主从同步的作用(1) 数据分布(2) 负载平衡(load balancing)(3) 备份(4) 高可原创 2015-09-23 23:42:04 · 438 阅读 · 0 评论 -
使用Anemometer基于pt-query-digest将MySQL慢查询可视化
本文主要介绍使用Anemometer基于pt-query-digest将MySQL慢查询可视化,因为网上资料相对较少,且都是英文的,遇到报错也没有相关的参考资料,因此写此文。欢迎转载,请注明作者、出处。作者:张正blog:http://space.itpub.net/26355921 QQ:176036317如有疑问,欢迎联系。准备条件:转载 2015-11-21 20:51:32 · 990 阅读 · 0 评论 -
去 IOE,MySQL 完胜 PostgreSQL
前言上周参加了2015年的中国数据库大会,差不多从第二届开始就每年都会北京参会,从最早的嘉宾到这次的会场主持人,也算见证了中国数据库大会的发展吧。记得最早的时候大会只有两天,分会场也比较小,而现在各种大会变为了三天,分会场也越来越细化,赞助商也从以前的出版社演变为各种高大上的软硬件公司,这是主办方的成功,也是整个数据库从业人员的骄傲。然而,这次会议讨论的最多的依然是去IOE问题,但是原来的转载 2015-11-24 20:35:12 · 609 阅读 · 0 评论 -
NFS技术实现图片共享存储
几乎所有的软件都有图片或附件的资源,将应用服务区和图片服务器放一起不合理的行为,因为一般图片服务器IO消耗严重,可能导致应用崩溃。因此需要剥离出专门的图片服务器,正对其进行专门的优化。对于小型的图片服务器可用NFS技术即可。后面会有专门篇章介绍FastDFS TFS HDFS等分布式文件系统方案。环境:server:192.168.15.131client :192.168.15.1转载 2015-11-24 23:09:50 · 2260 阅读 · 0 评论 -
mysql在线修改表结构大数据表的风险与解决办法归纳
整理这篇文章的缘由:互联网应用会频繁加功能,修改需求。那么表结构也会经常修改,加字段,加索引。在线直接在生产环境的表中修改表结构,对用户使用网站是有影响。以前我一直为这个问题头痛。当然那个时候不需要我来考虑,虽然我们没专门的dba,他们数据量比我们更大,那这种问题也会存在。所以我很想看看业界是怎么做的,我想寻找有没有更高级的方案,呵呵,让我觉得每次开发一个新功能,我在线加字段都比较转载 2015-11-27 15:42:35 · 3304 阅读 · 0 评论 -
Oracle GoldenGate 之--异构平台同步(Mysql到Oracle)
Oracle GoldenGate 异构平台同步(Mysql到Oracle)如图所示:源端采用Mysql库,目标端采用Oracle库一、OGG安装配置(源端)1、OGG下载https://edelivery.oracle.com/EPD/Download/get_form?egroup_aru_number=14841438https://e转载 2015-11-29 11:28:18 · 2067 阅读 · 0 评论 -
MySQL 调优/优化的 100 个建议
(编注:本文写于 2011 年)MySQL是一个强大的开源数据库。随着MySQL上的应用越来越多,MySQL逐渐遇到了瓶颈。这里提供 101 条优化 MySQL 的建议。有些技巧适合特定的安装环境,但是思路是相通的。我已经将它们分成了几类以帮助你理解。MySQL监控MySQL服务器硬件和OS(操作系统)调优:1、有足够的物理内存,能将整个InnoDB文件加载到内存里转载 2015-11-29 11:31:36 · 472 阅读 · 0 评论 -
MySQL性能优化的最佳21条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.为查转载 2015-11-29 11:30:17 · 407 阅读 · 0 评论 -
innodb_flush_log_at_trx_commit
innodb_buffer_pool_size如 果用Innodb,那么这是一个重要变量。相对于MyISAM来说,Innodb对于buffer size更敏感。MySIAM可能对于大数据量使用默认的key_buffer_size也还好,但Innodb在大数据量时用默认值就感觉在爬了。 Innodb的缓冲池会缓存数据和索引,所以不需要给系统的缓存留空间,如果只用Innodb,可以把这个值设为内存转载 2015-11-30 07:49:20 · 500 阅读 · 0 评论 -
加快mysql导入、导出速度
MySQL导出的SQL语句在处理百万级数据的时候,可能导入要花几小时。在导出时合理使用几个参数,可以大大加快导入的速度.-e 使用包括几个VALUES列表的多行INSERT语法;--max_allowed_packet=XXX 客户端/服务器之间通信的缓存区的最大大小;--net_buffer_length=XXX TCP/IP和套接字通信缓冲区大小,创建长度达net_bu转载 2016-01-20 20:33:34 · 2344 阅读 · 0 评论 -
MHA自动Failover过程解析
MHA是一位日本MySQL大牛用Perl写的一套MySQL故障切换方案,来保证数据库系统的高可用。近期,在田老师的推动下,开始一步步深入了解这个HA方案,并也计划在公司线上尝试部署。下面的东西是这段时间的学习笔记和个人理解,没有具体的实战经验,只是人为测试模拟故障的发生,通过日志来分析MHA背后的自动切换过程。首先,介绍下它的一些特点,以及为什么用它,在哪种场合更适合用它。1. 1转载 2015-12-04 20:31:14 · 935 阅读 · 0 评论 -
开源还是商用?十大云运维监控工具横评
随着云计算和互联网的高速发展,大量应用需要横跨不同网络终端,并广泛接入第三方服务(如支付、登录、导航等),IT系统架构越来越复杂。快速迭代的产品需求和良好的用户体验,需要IT运维管理者时刻保障核心业务稳定可用,而企业运维中的痛点和难点也急需解决。面向业务的运维,不但关心单点IT资源的运行状态,更关心整个业务系统的健康状态如果企业使用了大量的API和模块化应用,那么关注每转载 2015-12-04 19:12:20 · 1343 阅读 · 0 评论 -
为什么要关闭 MySQL Query Cache?
备注:插图来自淘宝苏普的博客并保留水印,如果觉得不当还请及时告知 :)写在前面:MySQL的query cache大部分情况下其实只是鸡肋而已,建议全面禁用。当然了,或许在你的场景下还是挺好的,还能发挥作用,那就继续使用吧,把本文当做参考就好。不过,可能有的人人为只需要把 query_cache_size 大小调整为 0 就可以了,可以忽略 query_cache_type 参转载 2015-12-04 19:09:58 · 7011 阅读 · 1 评论 -
[MySQL FAQ]系列 — 线上环境到底要不要开启query cache
Query Cache(查询缓存,以下简称QC)存储SELECT语句及其产生的数据结果,特别适用于:频繁提交同一个语句,并且该表数据变化不是很频繁的场景,例如一些静态页面,或者页面中的某块不经常发生变化的信息。QC有可能会从InnoDB Buffer Pool或者MyISAM key buffer里读取结果。由于QC需要缓存最新数据结果,因此表数据发生任何变化(INSERT、U转载 2015-12-04 19:08:10 · 1864 阅读 · 0 评论 -
MySQL 5.1同步到5.5卡库问题一则
今天在MySQL 5.1同步到5.5时遇到一则卡库问题,在从库上show slave status \G,报错如下:Error 'BIGINT UNSIGNED value is out of range in '(group.mg_group_var.grp_status_cnt + -(38))'' on query. Default database: 'group'. Qu转载 2015-12-05 21:46:27 · 875 阅读 · 0 评论 -
解决乱码的最佳实践
解决乱码问题最好全程使用 utf-8 编码,具体需要设置的点包括:1、页面内容使用 utf-8 格式保存,在页面中加入 和 2、服务器端的 server.xml 中设定 useBodyEncodingForURI = true,位置如下:[xhtml] view plaincopyConnector po转载 2015-12-05 20:47:34 · 453 阅读 · 0 评论 -
MYSQL主从同步故障一例及解决过程
公司里有两个mysql服务器做主从同步,某天Nagios发来报警短信,mysqla is down...赶紧联系机房,机房的人反馈来的信息是 HARDWARE ERROR 后面信息省略,让机房记下错误信息后让他们帮忙重启下看是不是能正常起来,结果竟然正常起来了,赶紧导出所有数据。 问题又出现了,nagios 又报警,mysql_AB error,检查从库show slave s转载 2015-12-05 20:42:43 · 885 阅读 · 0 评论 -
Slave: received end packet from server, apparent master shutdown:
数据库的一台从产生大量的如下错误: 140121 13:56:07 [Note] Slave: received end packet from server, apparent master shutdown:140121 13:56:07 [Note] Slave I/O thread: Failed reading log event, reconnecting to retry, lo转载 2016-01-08 14:51:54 · 1348 阅读 · 0 评论 -
源端RAC数据库删除实例操作时GoldenGate的运维流程
文章背景周六下午突然接到一个颇为头疼的任务——尽快为某客户提供一个 GoldenGate 操作方案,大体背景如下:客户的生产环境是 Oracle 11GR2 的三节点的 RAC ,上面部署了两套 GoldenGate软件,一套抽取在线日志 + 归档文件、一套为 ALO ( Archived Log Only ,即只读归档)模式,由于数据库方面的原因,需要尽快做删除其中一个实例的操作转载 2016-01-09 13:08:02 · 1439 阅读 · 0 评论 -
从零开始配置MySQL MMM
下面要配置的MySQL Cluster环境包含四台数据库服务器和一台管理服务器,如下:functionIPServer Nameserver idmonitor192.168.84.174--master192.168.85.167db11master192.168.85.169转载 2015-12-26 18:15:14 · 706 阅读 · 0 评论 -
MySQL BlackHole 存储引擎使用
BlackHole “黑洞”,高大上的样子,但它 No transaction,no xa,no savepoint,这些都没有阻挡他的应用;show engines 中会显示 blackhole 的comment 为:/dev/null storage engine (anything you write to it disappears) 它有自己特定的应用场景: 1、充当d转载 2015-12-26 21:36:47 · 2290 阅读 · 0 评论 -
【MySql】 BlackHole :黑洞引擎
BlackHole :黑洞引擎,写入的任何数据都会消失,用于记录binlog做复制的中继存储!如何安装: 在安装MySQL时使用带有--with-blackhole-storage-engine选项的 configure 命令。BLACKHOLE存储引擎在MySQ供应的服务器二进制版里可以找到:通过查看SHOW ENGINES或SHOW VARIABLES LI转载 2015-12-26 21:39:29 · 1311 阅读 · 0 评论