mysql密码忘记的解决方法
解决办法:
在windows下:
打开命令行窗口,停止mysql服务:
Net stop mysql
启动mysql,一般到mysql的安装路径,找到 mysqld-nt.exe
执行:mysqld-nt --skip-grant-tables 当前窗口将会停止。 (或者mysqld --skip-grant-tables)
另外打开一个命令行窗口,执行mysql 如果提示没有这个命令,先进入MYSQL的安装位置下BIN目录再运行mysql
>use mysql
>update user set password=password("new_password") where user="root";
>flush privileges;
>exit
用Ctrl+Alt+Del,找到mysqld-nt的进程杀掉它,在重新启动mysql-nt服务,就可以用新密码登录了
在linux下:
如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。
启动 MySQL :bin/safe_mysqld --skip-grant-tables & 或者 mysqld_safe --skip-grant-tables &
就可以不需要密码就进入 MySQL 了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新杀 MySQL ,用正常方法启动
Grant ALL PRIVILEGES on *.* to 'root'@'%' identified by '123456';
maybe you will use it.
insert into mysql.user ( host, user, password, select_priv, insert_priv, update_priv, delete_priv, create_priv, drop_priv, reload_priv,
shutdown_priv, process_priv, file_priv, grant_priv, references_priv, index_priv, alter_priv, show_db_priv, super_priv,
create_tmp_table_priv, lock_tables_priv, execute_priv, repl_slave_priv, repl_client_priv, create_view_priv, show_view_priv,
create_routine_priv, alter_routine_priv, create_user_priv ,ssl_cipher,x509_issuer,x509_subject ,Event_priv,Trigger_priv)
values ( '%', 'root', PASSWORD('123456'), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y','Y', '1' , '1' , '1', 'Y', 'Y' );
解决办法:
在windows下:
打开命令行窗口,停止mysql服务:
Net stop mysql
启动mysql,一般到mysql的安装路径,找到 mysqld-nt.exe
执行:mysqld-nt --skip-grant-tables 当前窗口将会停止。 (或者mysqld --skip-grant-tables)
另外打开一个命令行窗口,执行mysql 如果提示没有这个命令,先进入MYSQL的安装位置下BIN目录再运行mysql
>use mysql
>update user set password=password("new_password") where user="root";
>flush privileges;
>exit
用Ctrl+Alt+Del,找到mysqld-nt的进程杀掉它,在重新启动mysql-nt服务,就可以用新密码登录了
在linux下:
如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。
启动 MySQL :bin/safe_mysqld --skip-grant-tables & 或者 mysqld_safe --skip-grant-tables &
就可以不需要密码就进入 MySQL 了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新杀 MySQL ,用正常方法启动
Grant ALL PRIVILEGES on *.* to 'root'@'%' identified by '123456';
maybe you will use it.
insert into mysql.user ( host, user, password, select_priv, insert_priv, update_priv, delete_priv, create_priv, drop_priv, reload_priv,
shutdown_priv, process_priv, file_priv, grant_priv, references_priv, index_priv, alter_priv, show_db_priv, super_priv,
create_tmp_table_priv, lock_tables_priv, execute_priv, repl_slave_priv, repl_client_priv, create_view_priv, show_view_priv,
create_routine_priv, alter_routine_priv, create_user_priv ,ssl_cipher,x509_issuer,x509_subject ,Event_priv,Trigger_priv)
values ( '%', 'root', PASSWORD('123456'), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y','Y', '1' , '1' , '1', 'Y', 'Y' );
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30290247/viewspace-1745588/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30290247/viewspace-1745588/