我们使用MySQL Workbench,使用mysqldump版本8.0.20,在运行MySQL 5.7.38的RDS示例上运行了一个Dump。
在转储之后,我们无法访问1个表,具体来说,我们得到的错误是:Error Code: 1146. Table 'db_name.table1' doesn't exist 0.215 sec
转储日志如下所示:
Running: /Applications/MySQLWorkbench.app/Contents/MacOS/mysqldump --defaults-file="/var/folders/m7/h9sw24cx7698gpn46zpm7cp80000gp/T/tmpE8YzFp/extraparams.cnf" --user=user --host=db_host --protocol=tcp --port=3306 --default-character-set=utf8 --column-statistics=0 --skip-triggers "db_name"
Warning: A partial dump from a server that has GTIDs will by default include the GTIDs of all transactions, even those that changed suppressed parts of the database. If you don't want to restore GTIDs, pass --set-gtid-purged=OFF. To make a complete dump, pass --all-databases --triggers --routines --events.
mysqldump: Got error: 1146: Table 'db_name.table1' doesn't exist when using LOCK TABLES
我们无法找出我们做错了什么,而且我们不确定是否可以通过SSH进入RDS示例来备份MySQL文件,因此我们完全不知道解决方案是什么。
1条答案
按热度按时间laik7k3q1#
请检查用户是否具有对表的权限/访问权限。如果表存在且可访问,请运行以下操作:
通过检查data-dir MySQL来验证table 1的数据文件(.frm,.ibd)是否也可用。我怀疑table 1已损坏,以防您需要从备份中修复或恢复该表。