我用ECS一键配置好WEB环境之后,编写Java JDCB 连接MySQL失败,就尝试修改MySQL用户权限,但是我在进入phmyadmin用户组后,一不小心修改了root-locahost的权限,而且手贱点了修改后删除旧用户,然后.....然后......phpmyadmin就登不上了,通过XSHELL连接SSH后,登陆Mysql也会报错,报错信息Access denied for user 'root'@'localhost' (using password: NO);
从网上查的方法 所指示的配置文件在我的ECS中并不存在,求助
注:密码没有输错 而且不管是否输不输密码都报错
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
-------------------------
-------------------------
1. 停止MySQL服务,并在mysql配置文件my.cnf中添加skip-grant-tables参数到[mysqld]配置块中
2. 启动MySQL服务,添加root用户,并授予权限,启动数据库后,可以以密码登陆,并插入一条添加用户名为root的命令,命令执行如下:
./mysql.server start
./mysql -p
insert into user set user=’root’,ssl_cipher=”,x509_issuer=”,x509_subject=”;
添加完成后,对该root用户更新权限,更新权限命令如下:
update user set Host='localhost',select_priv='y', insert_priv='y',update_priv='y', Alter_priv='y',delete_priv='y',create_priv='y',drop_priv='y',reload_priv='y',shutdown_priv='y',Process_priv='y',file_priv='y',grant_priv='y',References_priv='y',index_priv='y',create_user_priv='y',show_db_priv='y',super_priv='y',create_tmp_table_priv='y',Lock_tables_priv='y',execute_priv='y',repl_slave_priv='y',repl_client_priv='y',create_view_priv='y',show_view_priv='y',create_routine_priv='y',alter_routine_priv='y',create_user_priv='y' where user='root';
执行完成后,执行quit 退出数据库。
3. 重启数据库并更新root密码
执行完添加与更新root用户权限后,可以使用命令:
./mysql.server restart 来重启数据库
利用./mysql -p 命令无密码登陆进入数据库,执行以下命令:
update mysql.user set password=password('newpassword') where user='root'
#将password()中的newpassword字符更改为你自己的密码
执行完成后,记得刷新权限:
4. 注释掉skip-grant-tables参数,重启数据库
权限刷新完成后,修改mysql的配置文件my.cnf,注释或删除掉添加的skip-grant-tables参数,然后利用命令:
./mysql.server restart 重启数据库即可
flush privileges;
5. 重启MYSQL就可以使用ROOT用户了。
-------------------------
那你得把MySQL服务启动失败的错误日志贴出来啊
-------------------------
评论
全部评论 (0)
你好,我是AI助理
可以解答问题、推荐解决方案等
评论
全部评论 (0)