MySQL的复制参数除了我们之前搭建主从时遇到的那几个之外,还有以下两个: 1.log-slave-updates 这个参数用来配置从库上是否启动了二进制日志的功能,默认是不开启的,如果开启了那么从库上的更新操作将会被记录到二进制日志中. 不过在级联复制的架构中,比如某个从库A也要作为其他服务器的主库,像这种链式的复制架构下,这个从库就需要打开此参数,因为从库A下面的从库还需要在从库A上获得二进制日志并进行同步操作. 2.read-only 此参数在生产环境中用的比较多,在生产环境中,从库一般读…
MySQL 5.6/5.7 参数文件优化配置[client]port = 3306socket = /data/mysql/tmp/mysql.sockdefault-character-set = utf8mb4 [mysqld]# ---------------- Basic ----------------port = 3306socket = /data/mysql/tmp/mysql.sockbasedir = /usr/local/mysql datadir = /data/mysq…
mysql在生产环境下有大量锁表,又不允许重启的情况下的处理办法 满头大汗的宅鸟该怎么办呢? mysql -u root -e "show processlist"|grep -i "Locked" >> locklist.txt; for line in awk '{print $1}' locklist.txt do echo "kill $line;">>lock_kill.sql done 不足之处,欢迎拍砖!…
在产品迭代开发发布过程中,由于业务需求的增加,数据库难免会有结构调整等操作. 在每个版本发布过程中怎么控制每个版本server端程序与数据库版本保持一致,以及数 据库升级.回滚等操作. 本博文宅鸟将向大家推荐一款mysql数据库迁移工具mysql-php-migrations 由于具体需求不同,宅鸟根据自己公司的情况将mysql-php-migrations做了一些修改来满应用! 宅鸟修改改程序后的mysql迁移程序有以下目录: config 配置文件 dbscript sql脚本目录 lib…
第一步:通过以下两种方式之一来打开慢查询功能 (1)方式一:通过修改mysql的my.cnf文件 如果是5.0或5.1等版本需要增加以下选项: log-slow-queries="mysql_slow_query.log" 如果是5.5版本以上可以增加如下选项: slow-query-log=On slow_query_log_file="mysql_slow_query.log" log-query-not-using-indexes 但是以上修改mysql配置文…
如果mysql中有正在执行的大事务DML语句,此时不能直接将该进程kill,否则会引发回滚,非常消耗数据库资源和性能,生产环境下会导致重大生产事故. 如果事务操作的语句非常之多,并且没有办法等待那么久,可以采取以后操作: 1. 在数据库中的配置文件中新增:innodb_force_recovery = 3. innodb_force_recovery影响整个InnoDB存储引擎的恢复状况.默认为0,表示当需要恢复时执行所有的innodb_force_recovery可以设置为1-6,大的数字包含…
日志实时分析系统 生产环境下有需求:要每搁五分钟统计下这段时间内的网站访问量.UV.独立IP等信息,用直观的数据表格表现出来 环境描述: 网站为Nginx服务,系统每日凌晨会对日志进行分割,拷贝到其他位置,当前日志清空 NGINX日志配置信息: http { log_format main '$remote_addr - [$time_local] "$request" ' ' - $status "User_Cookie:$guid" '; } server {…
在MySQL主从环境下,通常会根据Seconds_Behind_Master的值来判断slave的延迟状态,这么做在大部分情况下尚可接受,但其实是并不够准确的.对于Slave延迟状态的监控,应该考虑多种因素: 首先,我们先看下slave的状态:mysql> show slave status\G;*************************** 1. row ***************************slave_IO_State: Waiting for master to s…
问题描述:生产环境下的某台tomcat7服务器,在刚发布时的时候一切都很正常,在运行一段时间后就出现CPU占用很高的问题,基本上是负载一天比一天高. 问题分析:1,程序属于CPU密集型,和开发沟通过,排除此类情况.2,程序代码有问题,出现死循环,可能性极大. 问题解决:1,开发那边无法排查代码某个模块有问题,从日志上也无法分析得出.2,记得原来通过strace跟踪的方法解决了一台PHP服务器CPU占用高的问题,但是通过这种方法无效,经过google搜索,发现可以通过下面的方法进行解决,那就尝试下…
最近开发一个版本的功能当中用到了MongoDB分页,懒于造数据,于是就研究了下从生产环境上导出数据到本地来进行测试. 研究了一下,发现MongoDB的备份还原和MySQL语法还挺类似,下面请看详细介绍. 一.备份数据 因为需要测试数据,所以先要从生产服务器(CentOS 6.5)上备份出一份数据出来, 格式:  mongodump-h IP --port 端口 -u 用户名 -p 密码 -d 数据库 --drop 文件存在路径 示例: /opt/mongodb/bin/mongodump -h…