重建mysql套接字 mysql.sock文件

上周五,有一台linux服务器受到syn-flood 攻击,试着修改host.conf文件,添加了防止虚假地址攻击参数 multi on ,不料,重启服务器后,查看mysql数据库启动失败,检查丢失了套接字 /tmp/mysql.sock 文件。
谷歌一把,众说纷纭,一头雾水,貌似严重。

为了安全,首先备份N个数据库文件;
mysql5.0.37数据库使用源码安装,版本5.0.37-log,使用Localhost via UNIX socket,阅读启动脚本/usr/local/bin/mysqld_safe;判断一般人解决故障时没有切换到mysql用户,造成权限有问题,无法创建mysql授权表,所以也就无法创建/tmp/mysql.sock 和hostname.pid文件。因此,总结解决方法如下:
#su mysql
$/usr/local/bin/mysql_install_db     //重建授权表
$/usr/local/bin/mysqld_safe &        
$/usr/local/bin/mysql                //测试
mysq>bye;
$
文件已经解决,重新生成新的 /tmp/mysql.sock 和 hostname.pid
$su root
#chmod +t /tmp/mysql.sock            //添加保护

全部结束!

你可能感兴趣的:(重建mysql套接字 mysql.sock文件)