MySQL 常见问题处理
目录
[ 方法一(使用SET PASSWORD命令):](https://www.cnblogs.com/YuKiFuHaNe/p/17131895.html# 方法一(使用SET PASSWORD命令):)
[ 方法二(使用mysqladmin修改):](https://www.cnblogs.com/YuKiFuHaNe/p/17131895.html# 方法二(使用mysqladmin修改):)
[ 方法三(UPDATE 直接编辑user表):](https://www.cnblogs.com/YuKiFuHaNe/p/17131895.html# 方法三(UPDATE 直接编辑user表):)
MySQL登录:参考页面
本地登录:
Tips:要先进行环境配置(将’C:\Program Files\MySQL\MySQL Server 8.0\bin‘放入path下)
1 | 方法一->mysql -u 用户名 -p |

远程登录:
1:登录授权
方法一(改表法):
登录mysql后,更改mysql库中’user‘表中的’host‘项,将’localhost‘改为’%’
先输入’use mysql’进入mysql库中,再输入select host,user from user;
1 | update user set host = '%' where user = 'root'; |

方法二(授权法):
允许某个用户在任何主机可以访问mysql服务器:
1 | GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%'IDENTIFIED BY '密码' WITH GRANT OPTION; |
例如: 你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。
1 | mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; |
允许某个用户在在指定的主机可以访问mysql服务器,在指定主机以外的主机则无法访问数据库:
1 | GRANT ALL PRIVILEGES ON *.* TO '用户名'@'指定主机的IP地址'IDENTIFIED BY '密码' WITH GRANT OPTION; |
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
1 | mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; |
2:查看MySQL数据库端口
1 | mysql -u 用户名 -p |
3:远程连接数据库:
1 | mysql -h mysql服务器的IP地址 -P 端口号(通常为3306) -u 用户名 -p密码 |
如:MySQL 连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”
1 | mysql -h 192.168.5.116 -P 3306 -u root -p123456 //显示密码登陆 |
1 | mysql -h 192.168.5.116 -P 3306 -u root -p //隐藏密码登陆 |
MySQL修改密码:参考页面
方法一(使用SET PASSWORD命令):
1 | 输入命令 mysql -u root -p 指定root用户登录MySQL’ |
方法二(使用mysqladmin修改):
1 | 使用 mysqladmin 命令修改 MySQL 的 root 用户密码格式为 mysqladmin -u用户名 -p旧密码 password 新密码。 |
方法三(UPDATE 直接编辑user表):
1 | 输入命令mysql -u root -p指定 root 用户登录 MySQL |
添加约束:参考页面
ALTER TABLE 表名 WITH NOCHECK ADD CONSTRAINT 约束名 约束类型 具体的约束说明;
删除约束:
alter table 表名 drop constraint 约束名;
DataGrip连接MySQL数据库问题:
1:DataGrip连接出错
出错原因:mysql默认的是0时区,时区问题导致连接失败
方法一:
解决方法:在连接URL尾部加上 ?serverTimezone=UTC

1 | ?serverTimezone=UTC |
方法二:
解决方法:
查看当前全局时区
1 | show variables like '%time_zone%'; |
session时区
1 | SELECT @@GLOBAL.time_zone, @@SESSION.time_zone; |
查看是否’+8:00’,不是则修改
1 | set global time_zone="+8:00"; |
最后重启mysql服务器:
1 | MySQL服务名称默认是mysql80 |
日志
Mysql日志文件开启、配置、查看
- mysql.log是mysql的日志文件,里面记录的对MySQL数据库的操作记录。默认情况下mysql的日志文件没有产生,需要修改mysql的配置文件,步骤如下:
1. 找到配置文件位置
1 | mysql> show variables like 'datadir'; |
2.查看是否已经打开日志(默认打开)
1 | mysql> show variables like 'log_bin'; |
3.打开/关闭日志功能
- 第1步查到的目录,在其中找到my.ini,
- 关闭:加上
skip-log-bin和disabled-log-bin即可 - 打开:注释掉
skip-log-bin和disabled-log-bin即可
重启mysql服务即生效
1 | windows |
4. 打开MySQL的日志文件。
日志文件位置可据下推出:
1 | # General and Slow logging. |
5. mysql日志文件所在位置:
1 | windows: |
5. 使用下面的命令可以实时查看mysql的日志文件:
windows直接打开上步文件即可
1 | sudo tail -f /var/log/mysql/mysql.log |






