MySQL数据库root帐号一般只有MySQL DBA知道,这个帐号的密码需要严格保密,一旦泄漏问题很严重;但是如果DBA忘记了,则不能进行某些MySQL的管理工作,这时就必须在保证数据安全、无损坏的情况重置root帐号密码步骤:
1 停止mysqld数据库服务
shell service mysql stop
注:如果有用户拥有shutdown权限,则可以使用mysqladmin --user=xxx -password shutdown停止mysqld服务
2 以--skip-grant-tables选项启动mysqld数据库服务
shell mysqld --datadir=/var/data/ --pid-file=/var/data/xxxpid --skip-grant-tables
注:datadir指定数据库数据目录,pid-file指定内容为mysqld进程号的文件,指定skip-grant-tables选项,mysqld启动时忽略权限验证
3 不使用密码登录mysql数据库
shell mysql -uroot mysql
注:不指定密码选项(-p或--password),则使用空密码登录
4 修改帐号root密码
mysql update user set password=password('root_pwd') where user='root';
mysql flush privileges;
注:修改完密码后,必须使用flush privileges语句让密码生效,这里设置root帐号密码为root_pwd
5 停止mysqld数据库服务
shell mysqladmin --user=root -password shutdown
注:这次使用mysqladmin停止,linux下service不能停止手工启动的mysql数据库服务器
6 正常启动mysql数据库
shell service mysql start
7 使用新密码登录,发现密码已经修改为新密码
1 设置 跳过权限
sudo /mysqld_safe --skip-grant-tables&
mysql -uroot | msyql
2 重置密码
UPDATE mysqluser SET authentication_string = PASSWORD('123') WHERE User = 'root' AND Host = 'localhost';
3 退出
4 正常启动mysqld
5 更新权限
FLUSH PRIVILEGES;
进入Mysql数据库命令行方式有两种方式:
方式一:在Mysql开始菜单里包含Mysql命令行客户端,只要点击输入root的密码即可进入。
方式二:在DOS模式下(CMD模式)定位到Mysql安装目录下在子目录bin,调用mysqlexe进入,即
========================以下是命令===================================
C:\Program
Files\MySQL\MySQL
Server
51\bin>mysql
-u
root
Enter
password:
========================以上是命令===================================
7
使用mysqladminexe命令来修改Mysql的root密码
一般Mysql的root默认密码为空,如果你之前并没有设置过root密码就使用mysqladmin命令,你可以使用如下mysqladmin命令来修改root密码
========================以下是命令===================================
C:\Program
Files\MySQL\MySQL
Server
51\bin>mysqladmin
-u
root
-p
password
123456
Enter
password
C:\Program
Files\MySQL\MySQL
Server
51\bin>mysql
-u
root
-p123456
========================以上是命令===================================
8
如上所述使用mysqladmin第一次修改root的默认密码时,Enter
password回车即可,然后使用mysqlexe命令输入root及其密码即可进入Mysql命令行。
如果已设置了Mysql的root密码,现在需要修改并进入Mysql命令行模式,则输入
========================以下是命令===================================
C:\Program
Files\MySQL\MySQL
Server
51\bin>mysqladmin
-u
root
-p123456
password
root
C:\Program
Files\MySQL\MySQL
Server
51\bin>mysql
-u
root
-proot
========================以上是命令===================================
即可。
9
这里使用了到了Mysql自带的两种命令mysqladminexe和mysqlexe,mysqladmin修改密码的命令格式如下
mysqladmin
-u
root
-p[oldpass]
password
newpass
注意oldpass(老密码)可选,如果root默认密码为空,则不需要输入,如果需要更改老密码,请注意老密码与-p之间不要有空格,否则会报错,另外password和newpass(新密码)之间以空格分隔。
mysql命令与mysqladmin命令格式大同小异,主要用来输入正确的用户名和密码后进入Mysql命令行模式,格式如下
mysql
-u
root
-p[password]
如果不输入password,回车后会出现Enter
password的提示。如果root密码为空,也不需要输入password,出现Enter
password提示后回车即可。
mysql(mariadb)如何更改root密码,第一步是切换至root用户:
mysql(mariadb)如何更改root密码,主要使用mysqladmin命令,
-u
root,是指定用户,指定修改root用户的密码。
-p
password
是密码选项,其后面的newpasswd即为新的密码。
执行结果如下:
mysql(mariadb)如何更改root密码后,尝试不输入密码进入数据库:
mysql(mariadb)如何更改root密码后,现在输入正常的密码登录:
密码输入正确,登录数据库了!
具体要看你是在什么系统(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数据库root帐号密码,怎么修改过来全部的内容,包括:忘记MySQL数据库root帐号密码,怎么修改过来、忘记MySQL数据库root帐号密码,怎么修改过来、怎么修改mysql root密码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)