MySQL无法正常打开

img


为什么MySQL输入密码后是这样呢,如何解决,有知道的朋友吗,谢谢了

密码不正确呗,检查下,特别是大小写

https://my.oschina.net/ldm95/blog/879580

两种可能,一种是密码错误,一种是"root"用户可能没有授予本地主机(localhost)的访问权限

第一种自行解决
第二种你可以刷命令试试
GRANT ALL PRIVILEGES ON . TO 'root'@'localhost' IDENTIFIED BY 'your_password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
('your_password'为您的正确密码,请自行替换)

mysql -u root -p
-p后面不接密码
出现Enter password:后输入密码

img

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7802016
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:MySQL打开时在命令行输入密码后,按回车键闪退,快速解决方法
  • 同时,你还可以查看手册:MySQL MySQL服务器管理 如果你遇到表损坏的情况,要制作一个测试案例 中的内容
  • 您还可以看一下 刘运强老师的MySQL数据库从入门到实战课课程中的 审计功能:谁在什么时间做了什么小节, 巩固相关知识点
  • 除此之外, 这篇博客: 【MySQL】MySQL数据库被安装覆盖,需要修复恢复数据!中的 如何恢复表结构 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:

    首要的一件事情就是恢复表结构,如果很幸运地保留了当时的表结构,此步可跳过,直接执行上面的1步骤。

    1.1 随意创建一张同名表
    CREATE TABLE table_xyz(a int)ENGINE=InnoDB;
    
    1.2 关闭mysql服务
    net stop mysql
    
    1.3 复制备份的db_old/table_xyz.frm覆盖新建的表db_new/table_xyz.frm
    1.4 开启mysql服务
    net start mysql
    1.5 在mysql安装目录data文件夹下用文本编辑器打开.err文件
    这是mysql的错误日志,找到诸如 
     [Warning] InnoDB: Table db_new/table_xyz contains 1 user defined columns in InnoDB, but 6 columns in MySQL. Please check INFORMATION_SCHEMA.INNODB_SYS_COLUMNS 的记录,发现原表拥有6个字段。
     
    1.6 删除当前表,新建一张拥有6个字段的同名表
    mysql> DROP TABLE table_xyz;
    Query OK, 0 rows affected (0.26 sec)
    
    mysql>CREATE TABLE table_xyz(a1 int,a2 int,a3 int,a4 int,a5 int,a6 int)ENGINE=InnoDB;
    Query OK, 0 rows affected (0.66 sec)
    
    1.7 重复步骤1.2-1.3
    修改配置文件my.ini在[mysqld]下添加/修改innodb_force_recovery=6
    
    1.8 启动mysql服务,查看表结构,发现表结构已经恢复
    mysql> desc table_xyz;
    +-------------+---------------+------+-----+-------------------+----------------+
    | Field       | Type          | Null | Key | Default           | Extra          |
    +-------------+---------------+------+-----+-------------------+----------------+
    | id          | int(11)       | NO   | PRI | NULL              | auto_increment |
    | uid         | varchar(10)   | NO   |     | NULL              |                |
    | content     | varchar(1000) | YES  |     | NULL              |                |
    | pub_time    | varchar(20)   | YES  |     | NULL              |                |
    | tool        | varchar(50)   | YES  |     | NULL              |                |
    | create_time | datetime      | YES  |     | CURRENT_TIMESTAMP |                |
    +-------------+---------------+------+-----+-------------------+----------------+
    6 rows in set, 1 warning (0.01 sec)
    
    导出表结构,在命令提示符下输入 
    mysqldump -uroot -proot db_new table_xyz> d:\table_xyz.sql 
    在.sql文件中找到建表语句。 
    或者也可以用数据库管理软件如navicat中找到这张表,在对象信息中复制下DDL选项卡里的内容。
    
    1.9 停止mysql服务,修改配置文件my.ini
    修改innodb_force_recovery=0或者直接注释掉。
    
    2.0 启动mysql服务,删掉这张表,用获得的建表语句新建表
    至此,表结构已经完全恢复。
    
    

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^