mysql-我删除了用户表!我怎样才能找回它?
我确信我在一次事故中删除了表'mysql',然后犯了这个错误“table mysql.user dosen not exist”mysql-我删除了用户表!我怎样才能找回它?,mysql,Mysql,我确信我在一次事故中删除了表'mysql',然后犯了这个错误“table mysql.user dosen not exist” 我如何修复它,或者创建一个新表“mysql”注意,您不仅删除了该表,还删除了整个mysql权限数据库。 您需要找到脚本“mysql\u install\u db”。这将重新创建mysql权限数据库 请注意,通过删除并重新创建权限数据库,其他应用程序可能会因为其用户/etc不再存在而停止工作 你能做的不多。如果您可以运行查询,并且最近使用“备份表”备份了整个数据库,则可
我如何修复它,或者创建一个新表“mysql”注意,您不仅删除了该表,还删除了整个mysql权限数据库。 您需要找到脚本“mysql\u install\u db”。这将重新创建mysql权限数据库
请注意,通过删除并重新创建权限数据库,其他应用程序可能会因为其用户/etc不再存在而停止工作 你能做的不多。如果您可以运行查询,并且最近使用“备份表”备份了整个数据库,则可以尝试运行此查询:
RESTORE TABLE mysql.user FROM '/path/to/backup/directory'
如果不能,则必须在命令行中使用“--skip grant tables”选项执行mysql。这将允许您至少获得访问权限。您还可以通过运行mysql\u install\u db命令来重新创建它
无论哪种方式,你的桌子都应该是这样
+-----------------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+---------------+------+-----+---------+-------+
| Host | varchar(20) | | PRI | | |
| User | varchar(6) | | PRI | | |
| Password | varchar(41) | | | | |
| Select_priv | enum('N','Y') | | | N | |
| Insert_priv | enum('N','Y') | | | N | |
| Update_priv | enum('N','Y') | | | N | |
| Delete_priv | enum('N','Y') | | | N | |
| Create_priv | enum('N','Y') | | | N | |
| Drop_priv | enum('N','Y') | | | N | |
| Reload_priv | enum('N','Y') | | | N | |
| Shutdown_priv | enum('N','Y') | | | N | |
| Process_priv | enum('N','Y') | | | N | |
| File_priv | enum('N','Y') | | | N | |
| Grant_priv | enum('N','Y') | | | N | |
| References_priv | enum('N','Y') | | | N | |
| Index_priv | enum('N','Y') | | | N | |
| Alter_priv | enum('N','Y') | | | N | |
+-----------------+---------------+------+-----+---------+-------+
您还可以通过运行mysql/bin目录中的文件mysql\u升级来修复此问题。
只要运行该文件,它就会修复您的所有表。这是应用程序的一个好观点。我忘了把它加在我的表上answer@James-谢谢-只知道这一点,因为我以前撞过这堵墙;-)所以我不小心也这样做了(尝试迁移数据库,但不小心将其迁移到了自身…),但我的用户仍然能够登录。是否缓存了用户\密码?顺便问一下,如何删除名为“my/db”的数据库,我使用
删除数据库my/db
,这将显示语法错误。数据库名称应该(通常不能)包含\或/。正常命名约定使用CamelCase和u进行命名。-8.2. 模式对象名称,但在创建之前,它有一个名为my/db
的表,我只是想删除它?运行mysql_update-uroot-v-f会告诉我:\bin>mysql_upgrade-u root--force mysql_upgrade:get error:1524:Plugin'*3341D225A70FDF32F7D6E158192BF9A65654BE7F'在连接到mysql服务器升级过程中遇到错误,将无法继续。