很多人在想用数据库可视化界面管理多方便或者是那个什么集成套件或者是phpadmin那个网页,告诉你一旦数据库密码不记得了这些都进不去所以根本没法 *** 作,废话不多说了,我的数据库用户名是root这里主要说如果重置密码。1停掉mysql所有服务或者打开任务管理器关掉所有mysql进程,停止mysql服务的语句,首先进入mysql安装目录的bin目录我这里是F:\smarty\MySQL\bin执行 net stopmysql停掉服务。2进入cmd打开一个新的命令行窗口,并进入到mysql安装目录的bin目录3跳过权限检查启动MySQL,执行mysqld-nt --skip-grant-tables 这条语句 *** 作此步骤这步执行之后你会发现你的这个窗口里面不能输入了。好了准备执行下一步。4重新打开一个cmd命令行窗口,命令行转到F:\smarty\MySQL\bin目录下直接用mysql命令进入数据库这样已经进入数据库了,接下来就是切换至mysql数据库改变root用户的密码5切换到mysql数据库并更改密码,这里当然就不需要旧密码了否则就没有任何意义了。我这里当然以前的密码不是root所以这里改成了root6刷新权限,flush privileges;7现在就可以重启mysql,如果重启不了可以到任务管理器里面关掉mysql进程然后net startmysql启动服务,再输入命令 mysql -uroot -p你的新密码就可以了
如果不是root密码:
连root的密码也忘记了吗?
没有的话,用root进去,修改mysql数据库user表咯。
如果是root密码:
方法一:
MySQL提供跳过访问控制的命令行参数,通过在命令行以此命令启动MySQL服务器:
safe_mysqld --skip-grant-tables&
即可跳过MySQL的访问控制,任何人都可以在控制台以管理员的身份进入MySQL数据库。
需要注意的是在修改完密码以后要把MySQL服务器停掉重新启动才会生效
方法二:
可以进行如下的步骤重新设置MySQL的root密码:
1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。
因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的
状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对
外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全
状态。最安全的状态是到服务器的Console上面 *** 作,并且拔掉网线。
2.修改MySQL的登录设置:
# vi /etc/mycnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysqlsock
skip-name-resolve
skip-grant-tables
保存并且退出vi。
3.重新启动mysqld
# /etc/initd/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4.登录并修改MySQL的root密码
# /usr/bin/mysql
Welcome to the MySQL monitor Commands end with ; or \g
Your MySQL connection id is 3 to server version: 32356
Type ‘help;’ or ‘\h’ for help Type ‘\c’ to clear the buffer
mysql> USE mysql ;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’ ;
Query OK, 0 rows affected (000 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges ;
Query OK, 0 rows affected (001 sec)
mysql> quit
Bye
5.将MySQL的登录设置修改回来
# vi /etc/mycnf
将刚才在[mysqld]的段中加上的skip-grant-tables删除
保存并且退出vi。
6.重新启动mysqld
# /etc/initd/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
windows
1以系统管理员身份登陆系统。
2打开cmd—–net start 查看mysql是否启动。启动的话就停止net stop mysql
3我的mysql安装在d:\usr\local\mysql4\bin下。
4跳过权限检查启动mysql
d:\usr\local\mysql4\bin\mysqld-nt –skip-grant-tables
5重新打开cmd。进到d:\usr\local\mysql4\bin下:
d:\usr\local\mysql4\bin\mysqladmin -uroot flush-privileges password “newpassword”
d:\usr\local\mysql4\bin\mysqladmin -u root -p shutdown 这句提示你重新输密码。
6在cmd里net start mysql
7搞定了。
2,MySQL41以上版本一种密码错误问题的解决方法
1 # SET PASSWORD FOR ’some_user’@’some_host’ = OLD_PASSWORD(‘newpwd’);
2 # FLUSH PRIVILEGES;
3,Mysql数据库修复
myisamchk -r -q d:\mysql\data\latin1\
r代表修复
q代表快速
d:\mysql\data\latin1\数据库里面 代表里面的所有的文件
方法三:
如果你忘记了你的MYSQL的root口令的话,你可以通过下面的过程恢复。
1 向mysqld server 发送kill命令关掉mysqld server(不是 kill -9),存放进程ID的文件通常在MYSQL的数据库所在的目录中。
kill `cat /mysql-data-directory/hostnamepid`
你必须是UNIX的root用户或者是你所运行的SERVER上的同等用户,才能执行这个 *** 作。
2 使用`--skip-grant-tables' 参数来启动 mysqld。
3 使用`mysql -h hostname mysql'命令登录到mysqld server ,用grant命令改变口令。你也可以这样做:`mysqladmin -h hostname -u user password 'new password''。
(其实也可以用use mysql; update user set password =password('yourpass') where user='root' 来做到。)
4 载入权限表: `mysqladmin -h hostname flush-privileges' ,或者使用 SQL 命令`FLUSH PRIVILEGES'。(当然,在这里,你也可以重启mysqld。)
方法四:(一定要先备份)
1,重新在另一台电脑上安装相同版本的MySQL
2,删除忘记密码的电脑中MySQL安装目录中\data\mysql的全部内容(要先停止MySQL服务)
3,Copy新装的电脑上MySQL安装目录中\data\mysql的全部内容 to 刚刚删除的目录中
4,启动MySQL服务
这样就只有一个root用户了,密码为空……
1、打开mysqlexe和mysqldexe所在的文件夹,复制路径地址、
2、打开cmd命令提示符,进入上一步mysqlexe所在的文件夹。
3、输入命令 mysqld --skip-grant-tables 回车,此时就跳过了mysql的用户验证。注意输入此命令之后命令行就无法 *** 作了,此时可以再打开一个新的命令行。注意:在输入此命令之前先在任务管理器中结束mysqldexe进程,确保mysql服务器端已结束运行。
4、然后直接输入mysql,不需要带任何登陆参数直接回车就可以登录上数据库。
5、输入show databases; 可以看到所有数据库说明成功登陆。
MySQL密码的恢复方法之一
1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全状态。最安全的状态是到服务器的Console上面 *** 作,并且拔掉网线。
2.修改MySQL的登录设置:
# vi /etc/mycnf
在[mysqld]的段中加上一句:skip-grant-tables 保存并且退出vi。
3.重新启动mysqld
# /etc/initd/mysqld restart ( service mysqld restart )
4.登录并修改MySQL的root密码
mysql> USE mysql ;
mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;
mysql> flush privileges ;
mysql> quit
5.将MySQL的登录设置修改回来
# vi /etc/mycnf
将刚才在[mysqld]的段中加上的skip-grant-tables删除
保存并且退出vi。
6.重新启动mysqld
# /etc/initd/mysqld restart ( service mysqld restart )
7.恢复服务器的正常工作状态
将步骤一中的 *** 作逆向 *** 作。恢复服务器的工作状态。
MySQL密码的恢复方法之二
如果忘记了MySQL的root密码,可以用以下方法重新设置:
1 KILL掉系统里的MySQL进程;
killall -TERM mysqld
2 用以下命令启动MySQL,以不检查权限的方式启动;
safe_mysqld --skip-grant-tables &
3 然后用空密码方式使用root用户登录 MySQL;
mysql -u root
4 修改root用户的密码;
mysql> update mysqluser set password=PASSWORD('新密码') where User='root';
mysql> flush privileges;
mysql> quit
重新启动MySQL,就可以使用新密码登录了
MySQL密码的恢复方法三
有可能你的系统没有 safe_mysqld 程序(比如我现在用的 ubuntu *** 作系统, apt-get安装的mysql) , 下面方法可以恢复
1 停止mysqld;
/etc/initd/mysql stop
(您可能有其它的方法,总之停止mysqld的运行就可以了)
2 用以下命令启动MySQL,以不检查权限的方式启动;
mysqld --skip-grant-tables &
3 然后用空密码方式使用root用户登录 MySQL;
mysql -u root
4 修改root用户的密码;
mysql> update mysqluser set password=PASSWORD('newpassword') where User='root';
mysql> flush privileges;
mysql> quit
重新启动MySQL
/etc/initd/mysql restart
就可以使用新密码 newpassword 登录了。
具体要看你是在什么系统(windows或者是linux)下面的mysql了,一般来说,方法就是开不安全模式进入mysql,然后直接修改mysql数据库下面的user表,记得update user set password=password("新密码") where user="root";我写的就是个意思,password("新密码") ,password()是一个加密函数,不是直接password="新密码";参照网上的教程,自己试一下吧,有不懂的再问。先 把分给了吧。如果提示mysql不是有效命令,则进入mysql的跟目录下面的bin目录之后再进行 *** 作或者添加到环境变量里去。
算了,想想还是把步骤给你弄了一遍,
确保mysql服务关闭,如果注册过服务,用命令:net stop mysql 即可;
开启不安全模式,即不进行权限验证(密码验证)就可以任意身份进入mysql,用命令:mysqld -nt --skip-grant-tables
update mysqluser set password=PASSWORD('新密码') where User='root' and host='localhost';
关键的一步:刷新权限,使用命令:flush privileges;
关闭命令行,
杀死mysqld进程,方法:进入任务管理器就可以了,结束进程mysqldexe。
再次启动mysql服务,用命令net start mysql。
以上就是关于如何用命令行重置mysql密码,忘记mysql数据库密码怎么办全部的内容,包括:如何用命令行重置mysql密码,忘记mysql数据库密码怎么办、mysql 安装 登录 密码忘了怎么办、mysql workbench登录的密码忘记了怎么打开等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)