首页 > 编程知识 正文

mysql如何恢复单个数据库(如何恢复数据库单个用户)

时间:2023-12-20 12:40:56 阅读:318193 作者:KKSO

本文目录一览:

MySQL全备份如何只恢复一个库或者一个表

你好!

这个问题不是MYSQL数据库方面的问题,而是如何从一个文本文件中取出需要的部分内容的问题。 从数据库角度来说,没有什么好办法,可以使用操作系统中的文本编辑处理工具来实现。例如,如果不是太大,几百M可以用editplus,ultraedit等编辑工具打开找你需要sql拷贝出来导入。

如果是linux/unix,可参考如下方法:

1.使用 awk:

可以先到原数据库中使用 'show tables;' 查看数据库表的列表,注意,此列表已经按照字母排序,例如:

table1

table2

table3

然后使用awk 来过滤sql语句,假设你要恢复 table2 表,可以使用下面的语句:

awk ‘/^-- Table structure for table .table2./,/^-- Table structure for table .table3./{print}’ mydumpfile.sql /tmp/recovered_table.sql

2.使用sed:

与上面类似,假设你要恢复 table2 表,可以使用下面的语句:

cat mydumpfile.sql | sed -n -e '/Table structure for table .test1./,/Table structure for table .test2./p' /tmp/extracted_table.sql

怎么恢复mysql数据库

简单情况下:进入原来mysql安装路径下的data文件夹下,找到相应的库和ibdata1,进行copy,就可回复原来的数据。

复杂情况下:

从另一台机上把mysql数据库的mysql文件夹拷贝到本地机上,目的是恢复本地机对数据的访问和操作。经过如下几种情况的操作。

1.

在本地重装mysql(安装目录d:program

filesmysqlmysql

server

5.0),直接把mysql文件夹拷贝至d:program

filesmysqlmysql

server

5.0。结果,失败:数据库连接错误。

2.

卸载后重装mysql,将d:program

filesmysqlmysql

server

5.0下的数据备份,只把mysqldata文件夹全部内容拷贝到d:program

filesmysqlmysql

server

5.0data下。结果,失败:数据库连接错误。将备份的数据还完覆盖。结果,失败,还是连接不上数据库。

3.

卸载后重装mysql,将mysqldata文件夹里的cf1,last文件夹(这两个是原来mysql里的数据库)拷贝进d:program

filesmysqlmysql

server

5.0data。连接成功,在navicat

for

mysql里看到数据库cf1和last,但是不能访问,因为数据全为零。明白了原来data里以数据库命名的文件存储的是数据库的表结构,不是元数据。下一步,把data文件夹里的ibdata1文件(3.4g大,明显存储了元数据)拷贝到d:program

filesmysqlmysql

server

5.0data里,代替原来的ibdata1文件。重启电脑,打开navicat

for

mysql,连接成功,数据可以访问操作。

至此,操作终于成功。其实当初在那台机上把数据导出来,而不是现在直接把文件夹mysql复制过来会更容易恢复。但那台机已经重装了系统,也就是说mysql失效了。

mysql 某个数据库被删除怎么恢复

mysql 某个数据库被删除怎么恢复

1 找个别的机器安装个同版本的mysql或从已安装同版本的其他机器上(非同版本的也可以试下):

拷贝 mysql/data/mysql 目录到你的mysql/data/ 下吧

2 试着启动mysql服务,如果能启动了,理论上应该丢失的只有用户、授权等一些系统信息,不影响你的使用的数据;

如果不能启动,看错误日志,争取启动了。

3 赶紧把数据备份一份出来,重新把所有库(只是你后来创建的业务相关的库,不包括mysql库)都删了,重新导入一遍。理论上不这样也可以,但只是非生产重要的环境下。

4 重新做用户授权。

怎么恢复mysql数据库怎么恢复数据

简单情况下:进入原来mysql安装路径下的data文件夹下,找到相应的库和ibdata1,进行copy,就可回复原来的数据。

复杂情况下:

从另一台机上把MySQL数据库的mysql文件夹拷贝到本地机上,目的是恢复本地机对数据的访问和操作。经过如下几种情况的操作。

1. 在本地重装MySQL(安装目录D:Program FilesMySQLMySQL Server 5.0),直接把mysql文件夹拷贝至D:Program FilesMySQLMySQL Server 5.0。结果,失败:数据库连接错误。

2. 卸载后重装MySQL,将D:Program FilesMySQLMySQL Server 5.0下的数据备份,只把mysqldata文件夹全部内容拷贝到D:Program FilesMySQLMySQL Server 5.0data下。结果,失败:数据库连接错误。将备份的数据还完覆盖。结果,失败,还是连接不上数据库。

3. 卸载后重装MySQL,将mysqldata文件夹里的cf1,last文件夹(这两个是原来MySQL里的数据库)拷贝进D:Program FilesMySQLMySQL Server 5.0data。连接成功,在Navicat for MySQL里看到数据库cf1和last,但是不能访问,因为数据全为零。明白了原来data里以数据库命名的文件存储的是数据库的表结构,不是元数据。下一步,把data文件夹里的ibdata1文件(3.4G大,明显存储了元数据)拷贝到D:Program FilesMySQLMySQL Server 5.0data里,代替原来的ibdata1文件。重启电脑,打开Navicat for MySQL,连接成功,数据可以访问操作。

至此,操作终于成功。其实当初在那台机上把数据导出来,而不是现在直接把文件夹mysql复制过来会更容易恢复。但那台机已经重装了系统,也就是说MySQL失效了。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。