有两个mysql服务器A和B
我貌似在mysql B服务器没有关闭的情况下,删除了数据目录
然后我把mysql A服务器的数据目录,复制到mysql B服务器原来的位置
当我启动mysql B服务器报错 /etc/init.d/mysql start
Starting service MySQL warning:
/var/lib/mysql/mysql.sock didn't appear within 30 seconds
尝试解决方法
/etc/init.d/mysql status为 unused
我尝试用tcp的方式去连接
mysql --protocal=tcp -u root -P 3306 -h localhost
可以连上mysql,不过show databases的时候,只剩下information_schema这个数据库
而我看了一下,mysqld的进程是正在进行的
然后我尝试用TCP的方式,把服务器关掉
mysqladmin -u root -h 127.0.0.1 shutdown
然后发现mysqld的进程没了
于是我再重启mysql服务器 etc/init.d/mysql start
竟然能够成功启动
里面的数据库,就是我想要恢复的数据库了
本来我想补充问题信息,补充着补充着竟然把问题给解决了
我再补一个问题吧,出现mysql.sock找不到的解决方案,就是重启mysql服务器,对吗?
首先还是建议LZ贴出错误日志,我这里的经验的话,MySQL无法启动基本上是这些原因
data目录没有被初始化,尝试使用mysql_install_db初始化data目录
进程被强制杀掉,没有清除pid文件,这个时候把pid文件手工删除试试
目录权限不对,或者不可写等等,用chown和chmod把权限改对
没有加载正确的配置文件(导致用默认配置在跑,然后遭遇了其它问题)