1.windows忘记mysql密码
1关闭mysql服务
方式一:打开命令行输入net stop mysql
方式二:打开命令行窗口输入services.msc,或者点击计算机右键-->管理-->服务-->选择Mysql右键关闭
2.打开命令行,找到mysql安装路径下的bin目录, 命令行下cd进入目录
3.输入mysqld --skip-grant-tables然后回车。
如果mysql安装bin目录下不存在mysqld.exe文件所以会报错,但是bin目录下存在mysql-nt.exe所以,上条命令就改为mysqld-nt --skip-grant-tables然后回车,此时这个命令行就不能输入东西了,类似于卡了的状态,这时先不用管这个命令行,再打开一个新的命令行,输入mysql回车。
4.修改密码:
输入update user set password=password('123456') where user='root';即可完成对mysql密码的修改,mysql5.7以上没有password这个字段,变成了authentication_string。
改为:
update
user
set
authentication_string=
password
(
'123456'
)
where
user
=
'root'
;
5.刷新权限:
flush privileges;
然后开启mysql服务
说明:
mysqld --skip-grant-tables 表示服务器启动时跳过权限表
2.centos忘记密码
1. vi /etc/my.cnf,在[mysqld]中添加
skip-grant-tables
例如:
[mysqld]
skip-grant-tables
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
2. 重启mysql
service mysql restart
3. 使用用户无密码登录
mysql -uroot -p (直接点击回车,密码为空,即两次回车)
4. 选择数据库
use mysql;
5. 修改root密码
mysql5.7以上:
update user set authentication_string=password('123456') where user='root';
6 .刷新权限
flush privileges;
7 .退出
exit;
8 .删除第1部增加的配置信息
skip-grant-tables
9 .重启mysql
service mysql restart
mysql查看版本
方式一:没有进入界面
在命令行中myslq -V 显示版本
Windows中,如果没有配置mysql环境变量,执行这个命令时要到mysql安装目录下的bin目录下。
方式二:已经进入mysql
select version();
version() 是mysql内置函数。
附:
mysqld ,mysql ,mysqladmin命令的区别
mysqld is the server executable (one of them) #服务执行工具
mysql is the command line client # 客户端工具 查询用
mysqladmin is a maintainance or administrative utility # 运维和管理工具
mysqld启动MYSQL服务mysqldSQL后台程序(即MySQL服务器)。要想使用客户端程序,该程序必须运行,因为客户端通过连接服务器来访问数据库。(整理而来,不一定对)
具体用法可以 在命令行输入 mysql --help 、 mysqld --help 、mysqladmin --help 查看
mysqld用法参考链接:
https://www.cnblogs.com/shymen/p/8850655.html
mysqladmin 用法链接
https://www.cnblogs.com/qq78292959/p/3639384.html
https://www.cnblogs.com/sunmengbbm/p/5827605.html