我使用phpMyAdmin->export创建我的数据库的备份,但我现在发现它没有导出整个数据库,一些表被遗漏/拒绝。
然而,在进行导出时,我还保存了位于mysql/data/的整个数据目录,其中包含许多.ibd和.frm文件类型,这似乎反映了我曾经拥有的表。
我试图复制整个数据目录并将其粘贴到我的新设置中,但我不确定MySQL / phpMyAdmin的版本是否相同,如何从旧数据目录中找到 MySQL 版本?可能在那些.frm / .ibd文件之一中?
当我粘贴整个数据文件夹时,数据库中的某些表正常工作,但有些表显示以下错误。
#1033 - Incorrect information in file: '.\db\a_table.frm'
Run Code Online (Sandbox Code Playgroud)
此外,似乎每个显示相同错误消息的表都在phpMyAdmin的Structure视图中的Collation下标记为正在使用
我能做些什么来解决这个问题?这是什么意思?
我想知道如果我重新创建我的旧操作系统设置,它可以工作吗?有没有更好的办法?
查找表是否有命名约定?我看不到 oracle 的任何声明或谷歌上一致的任何内容。
但是我假设你们中的一些专业 DBA 遵循惯例?也许当您被要求编辑不是您创作的项目时,最常发生的约定是什么?
示例表
金属
+----+------------+
| id | metal_type |
+----+------------+
| 1 | gold |
| 2 | silver |
| 3 | bronze |
| 4 | brass |
+----+------------+
Run Code Online (Sandbox Code Playgroud)
目前我一直使用原始表名+列名作为我的查找表名。
metals_metal_type
Run Code Online (Sandbox Code Playgroud)
我决定更改为 LK_ + 原始表 + 列,因为它可以在浏览所有表时更轻松地导航。
LK_metals_metal_type
Run Code Online (Sandbox Code Playgroud)
您对此有何看法?
谢谢