这是为啥,为啥没反应,空行怎么退出去啊,这个 east20230331 是不是有问题了,所以这样
你这个不是在MySQL 客户端中操作,正常情况是这样的:
mysql>use db;
解决方案:重新登录MySQL:
mysql -uroot -p
中断当前正在运行的命令:
同时按下Ctrl和C键
【相关推荐】
正常情况下,当原来服务器的MySQL由于误操作而无法使用,可以在服务器上新建与原来数据库相同版本的MySQL,再将ibdata1、data中的数据库文件直接复制到新的数据库中,将文件的所有者权限改成mysql mysql即可。(如下:chown -R mysql:mysql ibdata1)
如果ibdata1文件被损坏或者被覆盖就会无法直接恢复,这时候需要通过 frm+ibd文件来对数据表进行恢复。
1、如果有原来数据库(这里成为db_old)的表结构,可以很好很快的恢复:
操作:
00、先新建一个数据库(db_new),与原来的库没有任何关系
01、将原有数据库结构导入新的数据库中
02、对新的数据库中的各个表进行如下操作
a、 mysql> ALTER TABLE table_xyz DISCARD TABLESPACE;
b、cp 原来db_old/table_xyz.ibd 新的数据库中db_new/table_xyz.ibd
c、chown -R mysql:mysql db_new/table_xyz.ibd 这里要说明一下(这里需要先看一下,原有的数据库拥有者的情况,可以通过 ll当前目录来查看)
d、mysql> ALTER TABLE table_xyz IMPORT TABLESPACE;
e、执行完成,数据应该就可以恢复了
2、如果没有原来的表结构,则需要通过frm先恢复表结构,然后再恢复数据:
直接关闭CMD,再重新打开