http://www.th7.cn/db/mysql/2011-07-07/9217.shtml 查看 MYSQL的字符设置,在SQL查询界面输入 SHOW VARIABLES LIKE 'character_set_%'
4: 如 果还无效的话,再尝试使用这个MYSQL数据库...
【mysql】 【SQL】 【数据库】 【DB】 【JDBC】 【variables】 点击查看原文>
一、通过软连接的方式迁移部分表空间到其他硬盘
优点:对数据没有任何影响,反而可以适当增加IO能力,使用多个磁盘的IOPS
缺点:需要停机
处理步骤:
1、关掉mysql实例
2、cp big.ibd /new/big.ibd
3、rename big.ibd big.ibd.remove
4、ln -s /new/big.ibd big.ibd
5、chow -R mysql:mysql /new/big.ibd
6、启动数据库,检查是否异常
7、删掉 remove的文件.
二、通过blackhole引擎,清理掉一些不重要,但是占用空间较大的表
优点:不需要停机
缺点:只能适用于slave,会缺少数据
处理步骤:
1、确认要处理的机器是slave,要处理的表不会有写入操作.
2、set sql_log_bin = off; stop slave;
3、rename table xx to test.xx;
4、create table xxx engine = blockhole;
5、start slave;
…
sql审核主要完成两方面的目的.
1、避免性能太差的sql进入生产系统,导致整体性能降低
2、检查开发设计的索引是否合理,是否需要添加索引
第一点是SQL审核最核心的地方,避免乱七八糟的sql影响线上性能,甚至导致线上系统崩溃.
第二点是属于建模的范畴,要解决建模的最好办法是DBA参与项目前期审核,由DBA建模,如果DBA人力资源不足,那么就定期由DBA对开发人员进行培训.然后发现建模太烂的就扣KPI.
现在很多公司都是人肉来完成SQL审核的,人肉审核对dba的要求较高,需要懂一些代码,另外是费时费力,毕竟一般公司几十个开发,对应一个DBA,而且DBA还要干很多其他的事情.
如何将DBA从人肉SQL审核中解放出来呢?
思路其实很简单:
1、获取程序要执行的SQL
…
目录
1.1.1 生成查询
1.1.2 创建对象
1.1.3 保存修改的对象
1.1.4 保存 ForeignKey 和 ManyToManyField 字段
1.1.5 检索对象
1.1.6 检索所有的对象
1.1.7 过滤检索特定对象
1.1.8 链接过滤
1.1.9 过滤结果集是唯一
1.2.1 结果集是延迟的
1.2.2 其他的QuerySet方法
1.2.3 限制 QuerySets
1.2.4 字段查找
1.2.5 跨关系查询
1.2.6 过滤器可参考模型字段
1.2.7 缓存查询集
1.2.8 比较对象
1.2.9 删除对象
1.3.1 一次修改多个对象
1.3.2 关系对象
1.3.3 One-to-many关系
1.3.4 Many-to-many关系
1.3.5 One-to-one关系
1.1.1 生成查询
…
首先安装LNMP环境,要求PHP-5.3以上版本.
参考:http://isadba.com/?p=82 或者参考 http://isadba.com/?p=572
然后下载Anemometer
git clone https://github.com/box/Anemometer.git anemometer
配置LNMP将下载下来的anemometer部署到LAMP上面,可以通过web打开页面,会提示你没有配置网站.
mysql -uroot -p mysql -uroot -p
安装percona的toolkit工具
yum install
http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
yum install percona-toolkit -y
修改配置文件
cd /var/www/anemometer/conf/
cp sample.config.inc.php config.inc.php
修改35-40行的数据库配置,连接到anemometer的数据库,当然,你数据库也需要授权.
…
[获取更多]一、pt-query-digest参数介绍.
pt-query-digest --user=anemometer --password=anemometerpass --review h=192.168.11.28,D=slow_query_log,t=global_query_review \ --history h=192.168.11.28,D=slow_query_log,t=global_query_review_history \ --no-report --limit=0% --filter=" \$event->{Bytes} = length(\$event->{arg}) and \$event->{hostname}=\"$HOSTNAME\"" \ /usr/local/mariamysql/data/localhost-slow.log
–filter 对输入的慢查询按指定的字符串进行匹配过滤后再进行分析
–limit限制输出结果百分比或数量,默认值是20,即将最慢的20条语句输出,如果是50%则按总响应时间占比从大到小排序,输出到总和达到50%位置截止。
–host mysql服务器地址
–user mysql用户名
–password mysql用户密码
–history …