如何找回root账户root账户密码丢失的情况,root账户密码一旦丢失,也就意味着你无法管理网站的用户或是修改网站了。这时候我们就需要想办法找回root账户密码,如何找回呢?
方法一:
安装了Mysql的服务器(前提是要知道该服务器上Mysql的root用户密码),打开【Mysql的安装目录/var/mysql】,将其中的user.frm、user.MYD、user.MYI三个文件拷贝到出问题服务器的【Mysql的安装目录/var/mysql】目录中。然后重启服务器。
解决方法二:
修改你的my.ini或my.cnf文件,在[mysqld]节下加入下面一行
skip-grant-tables
然后保存并重启MySQL服务。下面你就可以以任何用户名密码登陆数据库了。
如果是误删了root用户,则使用下面的语句创建root用户:
insertintousersetHost=''localhost'',User=''root'',Password=Password(''''),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'';
2、如果是忘记了root用户的密码,则使用下面的语句修改root密码:
updateusersetPassword=Password('''')whereUser=''root'';
mysql误删root用户1、先结束mysqld进程
#killallmysqld进入mysql
#/usr/local/mysql/bin/mysql
不加载grant_tables而进入mysql
#mysqld_safe–skip-grant-tables&
mysql>usemysql
Databasechanged
mysql>selectfromuser;
Emptyset(0.00sec)
mysql>insertintousersetuser=''root'',ssl_cipher=”,x509_issuer=”,x509_subject=”;
(增加root用户的表)
QueryOK,1rowaffected,3warnings(0.00sec)
(这时可能会提示某字段如ssl_cipher无默认值,只要加上,ssl_cipher=”;其字段如有提示依次添加就OK了)
updateusersetHost=''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''whereuser=''root'';
(这里面是修改root用户的权限)
mysql>quit;
2、带权限正常启动mysql
#servicemysqldstart
3、使用root用户登录(如果有phpadmin就直接用root空密码登录再修改密码或权限就可以了)
#mysql-uroot-p
mysql>updateusersetpassword=password(''123456′)whereuser=''root'';
QueryOK,1rowaffected(0.00sec)
Rowsmatched:1Changed:1Warnings:0
mysql>flushprivileges;
mysql>quit
|
|