mysql误删后数据恢复

今天误删了mysql,只剩下/var/lib/mysql 里面的ib_logfile0ib_logfile1ibdata1!
然后yum install mysql失败,原因是require的 mysql和available的mysql不一样。

第一个问题无法安装mysql

原因是源不对所以先删除最开始的源,然后rpm -ivh MySQL-server-4.0.14-0.i386.rpm 重装了源,就可以安装mysql

第二个问题输入mysql显示没有sock文件

连接localhost通常通过一个Unix域套接字文件/var/lib/mysql/mysql.sock。如果套接字文件被删除了,本地客户就不能连接。如果你因为丢失套接字文件而不能连接,你可以简单地通过重启服务器重新创建得到它。因为服务器在启动时重新创建它。
解决办法,实时上,在/etc/init.d下有个连接启动脚本 mysqld ,我们启动时可以直接用它service mysqld start |stop

第三个问题恢复数据

此时观察到mysql使用了/var/lib/mysql里面的ib_logfile0ib_logfile1ibdata1还有mysql库和hive库,所以数据又回来了。如果没有就手动cp过来具体如下:
1. 安装完成新服务器之后,通过命令行新建了与原来一样的数据库:数据库名称、用户名、密码都一样。如果有多个数据库需要恢复,就都给建好。
2. 停止 mysqld 进程
service mysqld stop
3. 将备份的原始数据库文件中的所有 .frm 文件(保持原来的目录结构)和 ibdata1 文件复制到新服务器的数据库文件目录中(如果新服务器操作系统和配置环境一样,那么目录结构也一样),其它文件不要。
4. 使用-innodb_force_recovery=6参数启动数据库服务器进程,这里是
/etc/init.d/mysqldstart -defaults-file=/etc/my.cnf -standalone -console -innodb_force_recovery=6

你可能感兴趣的:(环境配置)