自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 Linux Tips

1、根目录下文件不小心移动到其他目录/www/users/abcdefg.net/lib/ld-linux.so.2 –library-path /www/users/abcdefg.net/lib /www/users/abcdefg.net/bin/ls / -F /usr/lib64/python2.6/site-packages/pycurl.so: undefined symbol:

2017-11-11 13:22:58 352

原创 MySQL tips

1、pt-query-digest–limit参数:格式为pt:num,输出log中各个query的占比和占比数量最高的前num个数2、mysqlslap个人常用指令:time /usr/local/mysql/bin/mysqlslap -uuser -ppasswd -S/path/mysql.sock --create=create.sql --create-sche...

2017-08-29 23:27:47 762

原创 nfs server重启之后导致client因为挂载nfs分区无法使用df问题的解决办法

问题描述有两台服务器,其中一台向另一台通过nfs共享分区,如下: server A: nfs server server B: nfs Client 由于server A某种原因nfs重启,那么server B因为通过nfs挂载了Server A分区,导致df -h无响应,如下图所示: 通过strace,查看df执行卡住位置: 解决办法重启server B nfs服务...

2018-08-04 15:54:41 5301

原创 MySQL参数sql_slave_skip_counter和slave_exec_mode进一步认识

在mysql主从集群维护中,有时候从库可能会出现因为主从数据导致的无法执行的SQL语句,那么此时如果临时解决主从关系,可能会在从库上执行set global sql_slave_skip_counter=1|N以跳过无法执行的命令; 那么设置此参数的值1或者N是什么意思呢? sql_slave_skip_counter:The number of events from the maste

2018-01-08 15:23:47 882

转载 学习:传输层之TCP协议

一、TCP协议的特点TCP是一种可靠的、面向连接的字节流服务。源主机在传送数据前需要先和目标主机建立连接。TCP提供可靠交付的服务,通过TCP连接传送的数据,无差错、不丢失、不重复、并且按序列到达。且提供流量控制和拥塞控制。每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的。CP提全双工通信,允许通信双方的应用进程在任何时候都能发送数据。TCP连接的两端都设有发送缓存和接收缓存用

2017-12-21 17:35:14 679

原创 virtualenv详解及使用virtualenv复制虚拟独立的python环境

virtualenv 用来创建隔离的Python环境。处理python环境的多版本和模块依赖,以及相应的权限是一个很常见的问题。比如,你有个应用使用的是LibFoo V1.0,但另一个应用却要用到LibFoo V2.0。 如何处理呢?如果把所有模块都安装到 /usr/lib/python2.7/site-packages (或是你本机python默认的模块安装目录),那你极有可能无意中升级一些不该升

2017-12-16 15:09:08 15194 2

原创 percona-xtradb-cluster(pxc)初步认识、部署及运维实践

一、PXC介绍Percona XtraDB集群是一个完全开源的MySQL高可用性解决方案。 它将Percona服务器和Percona XtraBackup与Galera库集成,以实现同步多主复制。一个集群由节点组成,其中每个节点包含同一节点上同步的一组数据。 建议的配置至少有3个节点,但也可以有2个节点。 每个节点是一个常规的MySQL服务器实例(例如,Percona服务器)。 您可以将现有的MyS

2017-11-24 17:03:01 4586

原创 记一次揪心的MySQL数据恢复过程

先说下背景,公司其中一个项目所有服务都部署在客户的机房内,机房较小,没有UPS。其中一个MySQL实例(单机,无主从,windows server 2008,MySQL5.6.19)存放大量的日志数据,每天几十G的数据,定期清除(保存大概四个月的数据),由于硬盘空间不够,所以没有定期的备份。机房突然断电,启动MySQL server,当时没有注意错误日志,但是访问其中一个表时,server自动挂掉,

2017-10-21 16:44:34 4573

原创 建立本地yum源

由于定制化项目涉及到内网环境,而且提供的系统环境中缺少必要的依赖包,需要下载rpm包并打包到现场服务器下,但是由于rpm安装需要人为摸索各个rpm包的依赖顺序,因此想到使用createrepo工具建立rpm包之间的索引顺序。1、使用yum下载包及所有依赖的包例如:mkdir /install_rpm/ #创建存放rpm包的路径yum install --downloaddir=/install_

2017-10-18 11:40:03 373

原创 MySQL中explain执行计划中额外信息字段(Extra)详解

SQL执行计划是经过优化器决策,产生的SQL在数据库内部执行的访问路径计划; 由如下语法得到:explain select col1,col2 from t1..;desc select col1,col2 from t1..;理解输出各个列的含义 id:每个select子句的标识idselect_type:select语句的类型table:当前表名显示查询将访问的分区,如果你的查询是基于

2017-08-31 22:38:08 60594 10

原创 MySQL分区表及MySQL5.7对其的改进

基础认识从MySQL 5.7.17起,MySQL服务器中的通用分区处理程序已被弃用,并且在用于给定表的存储引擎预期提供自己的(“native”)分区处理程序时,将在MySQL 8.0中删除。 目前,只有InnoDB和NDB存储引擎才能做到。SELECT PLUGIN_NAME AS NAME, PLUGIN_VERSION AS Version, PL

2017-08-08 15:58:14 6699

转载 xtrabackup新版详细说明(version-2.4.1)

http://www.cnblogs.com/billyxp/p/5305676.htmlPercona Xtrabackup 2.4.1编译及软件依赖centos5,6 需要升级cmake至2.8.2版本以上,解决:安装cmake版本3.4.3测试通过 centos5 gcc g++ 需要升级gcc至4.4以上上 ,解决:安装4.4.7测试通过 另外xtrabackcup另外Boost版本需要

2017-07-28 17:24:09 1348

翻译 gh-ost和pt-osc性能对比

基于MySQL row格式的复制现在趋于主流,因此可以使用此格式的binlog来跟踪改变而不是触发器。与percona toolkit的pt-online-schema-online相比,gh-ost做法更为干净,更安全。由于gh-ost不使用触发器,可能会产生更低的开销并且工作更快。声明:这些基准对应于一个特定结构和硬件配置的表上的一个特定的ALTER TABLE。 我没有设置一套广泛的测试。 B

2017-07-18 23:21:45 7786 1

原创 MySQL问题:perror(1875),Statement violates GTID consistency

版本升级时,联调测试出现如下错误: The error occurred while setting parameters SQL: delete from tenant_token where user_id IN ( ? ) Cause: java.sql.SQLException: Statement violates GTID con

2017-07-13 16:13:04 6840 1

原创 解决/usr/lib64/libstdc++.so.6和/lib64/libc.so.6版本过低问题

在CentOS7.0中编译好MySQL5.7.14之后,然后在CentOS6.5中初始化MySQL,执行:/usr/local/mysql/bin/mysqld --version出现如下问题:./bin/mysqld: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./bin/mysqld)

2017-07-01 13:51:44 24851 5

转载 把MySQL Group Replication发挥到极致

MySQL异步复制及semi-sync半同步复制,它们都基于MySQL binlog,原生复制是完全异步的,master不需要保证slave接收并执行了binlog,能够保证master最大性能,但是slave可能存在延迟,主备数据无法保证一致性,在不停服务的前提下如果master宕机,提升slave为新的主库,就会丢失数据。semi-sync在异步复制基础上增加了数据保护的考虑,这样一来maste

2017-06-20 18:20:36 4527

原创 sysbench安装过程出现的问题解决办法

sysbench是一个开源的、模块化的、跨平台的多线程性能测试工具,可以用来进行CPU、内存、磁盘I/O、线程、数据库的性能测试。目前支持的数据库有MySQL、Oracle和PostgreSQL。以下操作都将以支持MySQL数据库为例进行。 在安装过程中遇见的问题:../libtool: line 838: X--tag=CC: command not found../libtool: line

2017-06-19 15:14:22 3591 1

原创 vmware虚拟机复制导致网络不能上的解决方法

在VMware里克隆出来的CentOS Linux。。ifconfig…没有看到eth0.。然后重启网卡又报下面错误。故障现象:service network restartShutting down loopback insterface:

2017-06-15 21:23:24 763

转载 undo log详解

我们知道MySQL的主备同步是通过binlog在备库重放进行的,IO线程把主库binlog拉过去存入relaylog,然后SQL线程重放 relaylog 中的event,然而这种模式有一个问题就是SQL线程只有一个,在主库压力大的时候,备库单个SQL线程是跑不过主库的多个用户线程的,这样备库延迟是不可避免的。为了解决这种n对1造成的备库延迟问题,5.6 引入了并行复制机制,即SQL线程在执行的时候

2017-06-15 21:18:04 4538

原创 MySQL-sql的逻辑查询处理

SQL语言不同于其他编程语言,最明显的不同体现在处理代码的顺序上。在大多数编程语言中,代码按编码被处理。但在SQL语言中,第一个被处理的总是FROM子句。下表显示了逻辑处理的顺序及步骤的序号。

2017-06-08 20:44:18 1320 1

原创 MySQL自增长与锁的进一步认识

自增长在数据库中是一种非常常见的一种属性,也是很多DBA或开发人员或者DBA人员首选的主键方式。在InnoDB存储引擎的内存结构中,对每个含有自增长值的表都有一个自增长计数器(auto_increment counter)。当对含有自增长的计数器的表进行插入操作时,这个计数器会被初始化,执行如下的语句来得到计数器的值:select max(auto_inc_col) from test for up

2017-06-07 15:09:23 21957 2

翻译 MySQL中ddl_log.log初步认识

今天发现测试数据库环境里在凌晨00:00时产生的一个日志文件-ddl_log.log,打开内容几乎是杂乱无章的,只有零散的信息,感觉和表中分区有关系,然后推断可能是因为定时event在00:00时调用函数进行表的添加和删除分区时生成的,但是具体原因无法确定。

2017-06-05 17:59:10 2931

原创 MySQL中的checkpoint机制

检查点(checkpoint):一种让数据库redo和data文件保持一致的机制作用:将BP中的脏页刷盘 通过频度适当的刷盘,减少实例恢复时间 重做日志不够用时,将脏页刷盘实现通过LSN实现 实例恢复时,假如checkpointLSN=1000,而redoLSN=1200,则LSN=[1001,1200]均需要重做LSN:Log Sequence Number:日志序列号,一个不断增大的数字,

2017-06-03 00:23:10 4634

原创 SQL优化流程

找到慢查询 slow.log,慢查询报表慢查询优先级 (1)query_time (2)rows_examined (3)新出现的或遗留的数量巨大的一个好的使用文本编辑器的习惯,重新排版慢SQLExplain分析执行计划Profile定位瓶颈mysqldumpslow或mysqlsla分析最近出现的频繁度通过在线下库add,drop key,使用hint来影响优化

2017-06-02 13:40:36 494

转载 MySQL备份与恢复

MySQL的备份恢复方法(或者叫工具)一般分为以下四种:mysqldumpmysqlbackupmysqlhotcopyxtrabackup/innobackupexmysqldump 在日常工作中,我们会使用mysqldump命令创建sql格式的转储文件来备份数据库。或者我们把数据导出后做数据迁移,主备搭建等操作。mysqldump是一个逻辑备份工具,复制原始的数据库对象定义和表数据

2017-06-01 23:53:48 386 1

原创 参数innodb_data_file_path修改注意事项

在测试环境下没有设置过多的详细参数就初始化并启动了服务,后期优化的过程中发现innodb_data_file_path设置过小: innodb_data_file_path ibdata1:12M:autoextend然后修改innodb_data_file_path参数为:innodb_data_file_path = ibdata1:12M;ibdata2:128M:autoexten

2017-05-25 14:52:31 3940

原创 keepalived+lvs部署中遇到的自动更改负载权重的问题

记一次keepalived.conf配置文件错误排查如题所述,配置文件中master_backup和slave配置的权重分别为3和1,如配置文件所示:virtual_server xxx.xx.20.225 5717 { delay_loop 6 lb_algo wrr lb_kind DR nat_mask 255.255.255.255 protocol

2017-05-24 18:44:00 2297

原创 在Python安装MySQLdb模块遇见的问题

安装python2.7的MySQLdb模块时遇见如下问题: [root@mycat-1 MySQL-python-1.2.3b1]# python setup.py build running build running build_py copying MySQLdb/release.py -> build/lib.linux-x86_64-2.7/MySQLdb running bui

2017-05-19 16:31:41 718

原创 MHA中send_report脚本(使用Email::Simple模块)

MHA是目前相对成熟的一套MySQL高可用方案,在MySQL故障切换过程中,MHA 能做到0~30 秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA 能最大程度上保证数据库的一致性,以达到真正意义上的高可用。并且可以通过send_report脚本实现邮件发送告警的功能。网上大多都是使用Mail::Sender模块实现发送邮件的功能,在此我是用了Email::Simple模块:

2017-05-16 15:10:07 5953 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除