新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1、编辑MySQL配置文件:
专注于为中小企业提供成都做网站、成都网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业岗巴免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
windows环境中:%MySQL_installdir%\my.ini //MySQL安装目录下的my.ini配置文件。
linux环境中:/etc/my.cnf
在[MySQLd]配置段添加如下一行:skip-grant-tables
保存退出编辑。
2、然后重启MySQL服务
windows环境中:
net stop MySQL
net start MySQL
linux环境中:
/etc/init.d/MySQLd restart
3、设置新的ROOT密码
然后再在cmd命令行下执行:
MySQL -uroot -p MySQL
要求输入密码时直接回车无需密码即可进入数据库了。
现在我们执行如下语句把root密码更新为 123456:
update user set password=PASSWORD("123456") where user='root'
quit 退出MySQL。
4、还原配置文件并重启服务
然后修改MySQL配置文件把刚才添加的那一行(skip-grant-tables)删除。
再次重起MySQL服务,即可
二.修改MySQL的用户名和密码:(未证实)
方法一:(适用于管理员或者有全局权限的用户重设其它用户的密码)
进入命令行模式
mysql -u root mysql
mysql UPDATE user SET password=PASSWORD("new password") WHERE user='name'
mysql FLUSH PRIVILEGES
mysql QUIT
方法二:(应用同上,只是方法不同)
mysql -u root mysql
mysql SET PASSWORD FOR name=PASSWORD('new password')
mysql QUIT
最后必杀技:
mysqladmin -u root "old password" "new password"
注:以上name请用你的用户名来替代,new password请输入你想要设置的密码。
mysql数据库密码忘记了,第一可以通过修改文件配置来重新设置密码,第二可以重新下载mysql就可以重新设置密码了。在我们使用数据库的时候通常都会使用root用户登录,所以就需要设置密码,但是这个密码是不可见的,而且在使用Navicat Premium连接数据库的时候也需要使用密码才可以连接。当我们忘记密码时,我们有两种办法来解决。
第一打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址,按win+R打开cmd命令提示符并进入刚刚所复制的路径中,输入命令mysqld --skip-grant-tables,然后敲回车,此时就跳过了用户验证过程,注意:输入此命令之后该命令窗口就无法操作了,此时应该从新再打开一个新的命令窗口。在输入此命令之前先在任务管理器中(ctrl+alt+del)结束mysqld.exe进程。然后直接在命令行输入mysql,不需要带任何登录参数和密码,直接回车就可以登录上数据库。 输入show databases;可以看到所有数据库的内容就说明已经登录成功了,就可以使用了。如果想更改root密码,输入update user set password=password('123456') where user='root' and host='localhost'; 就可以修改密码了。
第二可以将电脑中的mysql文件夹和程序都删除,重新下载并配置mysql,这样你的数据库就是一个新的无密码的数据库了。
在使用mysql时,如果想修改用户密码,怎么修改?我们可以借助客户端工具来修改,下面来看一下。
01
打开客户端工具Navicat,打开数据库里的mysql库,这是一个系统数据库。
02
打开后,在Tables表里,找到user表,这是保存系统用户的一个表数据。
03
打开后,就可以在这里看到每个数据库的用户名和密码了。
04
要修改密码,我们点击单元格,让其变成编辑状态后,直接输入新的密码就行了。
今日分享主题:mysql root账号如何重置密码
前两天发现我的 mysql 数据库突然无法登录,但是上周还使用得是正常的,经过一番查找还是没有找到问题的原因。
DBA 给我的解释:我怀疑主机重启后,某些文件(user.*)就丢了,不知道啥原因。我记得之前你也是重启后遇到过相同问题。
既然这样,只好重置 root 账号密码了。具体操作步骤如下
Step1:停止 mysql 服务
命令:systemctl stop mysqld #停掉MySQL
命令:systemctl status mysqld #查看状态
Step2:修改/etc/my.cnf配置,添加 skip_grant_tables=1 启动设置,注意要在[mysqld]行所在的下面添加。
Step3:重启 mysql 并查看状态
systemctl start mysqld
systemctl status mysqld
Step4:使用 mysql 命令连接到 mysql 服务器,重新设置root密码
use mysql #进入mysql数据库 select * from user; #查询user表 查看是否有root账号,如果没有就需要操作如下insert into 语句:
如果 user 表里面有 root 账号,则直接可以重置密码。
命令如下:update user set authentication_string=password('test123') where user='root'
FLUSH PRIVILEGES; #刷新授权列表
再输入 exit 退出mysql
Step5:将步骤2中/etc/my.cnf 文件中添加的 skip_grant_tables=1 启动设置去掉,再执行一个systemctl restart mysql 命令重启 mysql 服务。
Step6:使用重置后的密码再登录时问题解决。
1、打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址
2、打开cmd命令提示符,进入上一步mysql.exe所在的文件夹。
3、输入命令 mysqld --skip-grant-tables 回车,此时就跳过了mysql的用户验证。4、注意输入此命令之后命令行就无法操作了,此时可以再打开一个新的命令行。注意:在输入此命令之前先在任务管理器中结束mysqld.exe进程,确保mysql服务器端已结束运行。
5、然后直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库。
6、输入show databases; 可以看到所有数据库说明成功登陆。
7、其中mysql库就是保存用户名的地方。输入 use mysql; 选择mysql数据库。
8、show tables查看所有表,会发现有个user表,这里存放的就是用户名,密码,权限等等账户信息。
9、输入select user,host,password from user; 来查看账户信息。
10、更改root密码,输入update user set password=password('123456') where user='root' and host='localhost';
11、再次查看账户信息,select user,host,password from user; 可以看到密码已被修改。
12、退出命令行,重启mysql数据库,用新密码尝试登录。
13、测试不带密码登录mysql,发现还是能够登陆上,但显示数据库时只能看到两个数据库了,说明重启之后跳过密码验证已经被取消了。
14、我这地方重启数据库之后之所以不带密码任然能够登录是因为我的数据库里存在设无须口令的账户。
方法1 用SET PASSWORD命令
1
1、打开终端win+r输入cmd回车即可打开;
2、通过mysql -u用户名 -p指定root用户登录MySQL,输入后回车会提示输入密码。
3、修改MySQL的root用户密码,格式:mysql set password for 用户名@localhost = password('新密码'); 例子:mysql set password for root@localhost = password('shapolang'); 上面例子将用户root的密码更改为shapolang ;
重新登录,输入新密码shapolang就ok了;
END
方法2 用mysqladmin
1
1、打开终端win+r输入cmd回车即可打开;
2、修改MySQL的root用户密码格式:mysqladmin -u用户名 -p旧密码 password 新密码 例子:mysqladmin -uroot -pshapolang password 123456
上面例子将用户root原来的密码shapolang改为新密码123456
重新登录,输入新密码123456就ok了;
END
方法3 用UPDATE直接编辑user表
1
1、首先登录MySQL。
2、 连接权限数据库: use mysql; 。3、改密码:update user set password=password("shapolang") where user="root";(别忘了最后加分号) 。 4、刷新权限(必须步骤):flush privileges;
重新登录,输入新密码shapolang就ok了;
END
方法4 忘记root密码的时候
1
1、关闭正在运行的MySQL服务。
2、打开DOS窗口,转到mysql\bin目录。 3、 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。 4、再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),输入mysql回车,如果成功,将出现MySQL提示符 。 6、连接权限数据库: use mysql; 。 7、改密码:update user set password=password("root") where user="root";(别忘了最后加分号) 。 8、刷新权限(必须步骤):flush privileges; 。 9、退出 quit。
重启mysql服务,使用用户名root和刚才设置的新密码root登录就ok了;