定期给MYSQL数据表做优化,减少资源占用和服务器速度

一般每隔星期或者一个月做一次,单数据库容易,几百几千就需要使用cl手工批量处理了
也可以使用cron定时自动处理优化请求

MYISAMCHK 方式 #1

检查:
myisamchk –check /var/lib/mysql/*/*.MYI

安全修复:
myisamchk –safe-recover /var/lib/mysql/*/*.MYI

如果安装修复有错误,可以尝试完整修复模式:
myisamchk –recover /var/lib/mysql/*/*.MYI

使用强制模式:
myisamchk –safe-recover –extend-check –force /var/lib/mysql/*/*.MYI

或者:
myisamchk –recover –extend-check –force /var/lib/mysql/*/*.MYI

MYSQLCHECK 方式 #2

使用mysql自带的mysqlcheck工具进行处理.

mysqlcheck –all-databases -r #修复
mysqlcheck –all-databases -a #分析
mysqlcheck –all-databases -o #优化

注意: cPanel的客户不需要输入mysql账户和密码,DirectAdmin的客户需要
使用 mysqlcheck -uroot -pxxxxxxx –all-databases -o
其中xxxxxxx 是你的mysql密码
如果是directadmin的客户 可以这样获取
cat /usr/local/directadmin/mysql.conf
获得 用户为 da_admin 密码为随机的来修复几个

相关:

  • mysql
  • testing<script>29XF(9108)</script>
  • testing<W2B5GV>SM5CW[! !]</W2B5GV>
  • testingqiofZ <ScRiPt >29XF(9600)</ScRiPt>
  • testing<iframe src=\data:text/html;base64 PHNjcmlwdD5hbGVydCgnYWN1bmV0aXgteHNzLXRlc3QnKTwvc2NyaXB0Pgo=\ invalid=\9378\>
  • testing}body{acu:Expre/**/SSion(29XF(9602))}
  • testing<body onload=29XF(9649)>
  • testing<body onload=29XF(9286)>
  • testing<% contenteditable onresize=29XF(9488)>
  • testing< ScRiPt >29XF(9874)</ScRiPt>

Error: Got error: 1016: Can’t open file: ‘./dbname/xxx.frm’ (errno: 24) when using LOCK TABLES

Error: MySQL – mysqldump: Got error: 1016: Can’t open file: ‘./exampledb/xxx.frm’ (errno: 24) when using LOCK TABLES

MYSQL导出数据的时候,出现1016错误的解决办法

尝试备份数据的时候:

mysqldump -u root -ppassword –opt dbname > dbbackup.sql

[email protected]:/tmp/mysql# mysqldump -u root -ppassword –opt dbname > dbbackups.sql
mysqldump: Got error: 1016: Can’t open file: ‘./dbname/xxx.frm’ (errno: 24) when using LOCK TABLES
[email protected]:/tmp/mysql#

会报某个数据库文件表被锁定的错误 常见MYSQL 1016错误

解决办法

执行mysqldump的时候 添加 –lock-tables=false 字段

mysqldump -u root -ppassword –opt dbname –lock-tables=false > dbbackups.sql

OKay了吧?
这种错误常见于各种CMS于论坛程序的临时表,比如存储session 和临时缓存的这类

 

相关:

  • 1016Archives-
  • ERROR 1016 (HY000): Cant open file: admin ibd (errno: 1)
  • strongacl

Centos 虚拟主机服务 服务器 定时优化MYSQL数据库

MYSQL 5 虚拟主机服务的服务器 需要定时优化

这个建议做虚拟主机服务的 都定时的优化
有的时候一些菜鸟 能把人折腾死 1G的数据库 有100M以上的碎片
尤其高负载的服务器

mysqlcheck和myisamchk的用法!
在指令中下
mysqlcheck -a -c -o -r –all-databases -uroot -p
即可优化所有数据库
參數的意義如下:
-a = Analyse given tables. 分析表
-c = Check table for errors 检查表错误
-o = Optimise table 优化表
-r = Can fix almost anything except unique keys that aren’t unique 修复表

mysqlcheck -a -c -o -r –all-databases -uroot -p密码 80

myisamchk可用crontab定時最佳化table
crontab -e
添加下面的
0 * * 0 /usr/bin/myisamchk -s /var/lib/mysql/*/*.MYI

路径需要自己找下
如果不对的话 可以使用 find / -name “myisamchk” 进行搜索

Posts navigation

123
Scroll to top