- Rongsen.Com.Cn 版权所有 2008-2010 京ICP备08007000号 京公海网安备11010802026356号 朝阳网安编号:110105199号
 - 北京黑客防线网安工作室-黑客防线网安服务器维护基地为您提供专业的
服务器维护
,企业网站维护
,网站维护
服务 - (建议采用1024×768分辨率,以达到最佳视觉效果) Powered by 黑客防线网安 ©2009-2010 www.rongsen.com.cn
 
 
    
        作者:黑客防线网安MYSQL维护基地 来源:黑客防线网安MYSQL维护基地 浏览次数:0 | 
#/etc/init.d/mysqld restart 
stopping mysql     [ok] 
Timeout error occurred trying to start MySQL Daemon.  [failure]  
但是这个时候mysql实际上已经起动了,因为用netstat -ln命令去看3306端口已经起动.使用mysql -u root -p password也能连接到数据库.
解决方法:
修改/etc/init.d/mysqld.
在mysql里创建dameon用户,然后再修改/etc/init.d/mysqld.
具体操作如下:
我们不妨先看看/etc/init.d/mysqld起动脚本是如何工作的,注意下面的一段 
# If you've removed anonymous users, this line must be changed to 
        # use a user that is allowed to ping mysqld. 
        ping="/usr/bin/mysqladmin -uUNKNOWN_MYSQL_USER ping" 
        # Spin for a maximum of ten seconds waiting for the server to come up 
        if [ $ret -eq 0 ]; then 
            for x in 1 2 3 4 5 6 7 8 9 10; do 
            if [ -n "`$ping 2> /dev/null`" ]; then 
                    break; 
            else 
                    sleep 1; 
            fi 
            done 
            if !([ -n "`$ping 2> /dev/null`" ]); then 
                    echo "Timeout error occurred trying to start MySQL 
Daemon."                    action $"Starting $prog: " /bin/false 
            else 
                    action $"Starting $prog: " /bin/true
            fi 
        else 
            action $"Starting $prog: " /bin/false 
        fi 
        [ $ret -eq 0 ] && touch /var/lock/subsys/mysqld 
        return $ret  
 
    我们看到,脚本判断mysql是否起动,使用的是mysqladmin ping命令. http://webjx.com
    而这个命令想要正确执行是需要能够登录mysql的.现在一些默认帐号已经删除,而且其它帐号已经设置了密码(默认没有设置密码).于是它没有办法连接到mysql. http://webjx.com
   于是我用了下面的办法解决. 
   a)建立一个帐号,不设置密码,不给任何权限. 
   b)修改/etc/init.d/mysqld 
   下面我给出具体操作 
   #mysql -u root -p passwd 
   mysql>GRANT select ON test.* TO daemon@localhost 
   mysql>revoke select on test.* from daemon@localhost  
   vi打开/etc/init.d/mysqld 
   把下面这行 
   ping="/usr/bin/mysqladmin -uUNKNOWN_MYSQL_USER ping"  
   修改为 
   ping="/usr/bin/mysqladmin -udaemon ping"  
  保存,退出. 
  重新起动mysql 
  #/etc/init.d/mysqld restart 
  Stopping MySQL:                                            [  OK  ] 
  Starting MySQL:                                            [  OK  ] 
 
  这样就可以了.
| 我要申请本站:N点 | 黑客防线官网 | | 
| 专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479 |