我正在运行本地mysql服务器来处理转储中的一些旧数据。我可以使用以下方式正常登录数据库:
/mysql -uroot -p
实际上show databases
命令正确输出以下内容,我也能够执行查询并正常使用数据:
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| servicenow2 |
| sys |
+--------------------+
现在问题是我使用命令行从我的旧转储中导入一些文件:
/mysql -uroot -p servicenow2</filetoimport.sql
然而,此命令不再有效(导致服务器中的所有dbs):
ERROR 1049 (42000): Unknown database 'servicenow2'
我认为某些架构在某处有损坏是否有任何方法可以解决这个问题所以我不必转储数据库并重新导入它我正在使用的数据库超过150gb并且需要很长时间才能转储和重新导入。
更新:我执行了如下所述的刷新权限:https://superuser.com/questions/603026/mysql-how-to-fix-access-denied-for-user-rootlocalhost
现在命令:mysql -uroot -p servicenow2
正确启动servicenow2 db中的客户端,但导入mysql -uroot -p servicenow2</filetoimport.sql
仍然提供未知的db错误。