今天小编给大家分享一下mysql怎么恢复数据库的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
1、备份文件中只包含表的备份,不包含库的语句时,导入时必须指定库名,目标库必须存在。
可以从备份文件mysql-user.sql引入test库。
[root@localhost ~]# mysql -u root -p test < mysql-user.sql
Enter password:
[root@localhost ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 17
Server version: 5.5.22-log Source distribution
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql> use test; ## 验证导入结果
Database changed
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| user |
+----------------+
1 row in set (0.00 sec)
mysql>
2、如果备份文件包含完整的库信息,则在进行导入操作时不需要指定库名,可以从备份文件auth.sql恢复auth库。
[root@localhost ~]# cd /usr/local/mysql/data/
[root@localhost data]# ls
auth ib_logfile0 localhost.err mongodb mysql-bin.000001 mysql-bin.000003 mysql-bin.index performance_schema
ibdata1 ib_logfile1 localhost.pid mysql mysql-bin.000002 mysql-bin.000004 mysql.error.log test
[root@localhost data]# mv auth /tmp/ ## 移动 auth 库,进行模拟故障操作。
[root@localhost data]# ls -ld auth
ls: 无法访问auth: 没有那个文件或目录
[root@localhost data]# mysql -u root -p < ~/auth.sql ## 执行导入恢复操作。
Enter password:
ERROR 1050 (42S01) at line 63: Table '`auth`.`users`' already exists
[root@localhost data]# ls -ld auth ## 确认恢复后的结果。
drwx------. 2 mysql mysql 4096 8月 1 05:17 auth
[root@localhost data]#
版权声明:除特别声明外,本站所有文章皆是本站原创,转载请以超链接形式注明出处!