4
JackLin的博客
首页
分类
标签
生活
时间轴
关于我
友链
搜索
管理员
宝塔面板安装MySQL数据库遇到的坑
宝塔
数据库
环境搭建
MySQL
发布日期:
2020-05-20 15:59:13
阅读量:
173
所属分类:
数据库设计
今天由于在写 MySQL 安全性方面的实验报告,关于角色管理这一个内容,低版本的 MySQL 数据库不支持,为了方便,直接就用宝塔面板安装了一个 MySQL8.0。 原本以为会很顺利,但是中间确遇到了点小问题,特此记录一下。 ## 遇到问题 我安装成功之后,尝试使用 Navicat 连接数据库,但是却报了一个 1045 错误,如下图所示:  网上查了一下说是不允许远程主机访问,实际上也比较容易解决。 ## 解决方案 稍微熟悉 MySQL 的同学应该知道,安装完数据库后,默认是有一个 root 用户的,root 用户有最高的权限,可以创建一些用户并赋予权限。 而记录用户的一些信息是放在 mysql数据库(具体的一个数据库)的 user 表里面的。 我们可以使用 Xshell 连接服务器,使用 root 用户登录 MySQL 服务,查看 mysql 数据库里面的 user 表的具体内容。 ## 连接 MySQL进行操作 ### 使用 root 用户进行登录 ``` mysql -u root -p123456 ``` - -u 后面输入用户名 - -p 后面输入密码(如何使输入明文密码不需要空格) - 如果想输入密码是不显示密码,则在最后直接输入 -p,然后会提示输入密码 `mysql -u root -p` ### 查看 mysql 数据库(是以具体的数据库)中的 user 表中的字段 **为了方便理解,我先给出一张成功修改之后的截图**  下面进行具体的操作 ``` use mysql; ## 切换到 mysql 数据库 select Host, User from user; ## 查询Host,User 字段 ```  发现 root 用户对应的 Host 字段默认值是 localhost,表明只允许本地连接,我们需要对其进行修改 ### 修改 Host 字段,然后刷新一下 ``` update user set Host = '%' where User = 'root'; ## 修改之后记得刷新一下 flush privileges; ```  这里的 % 是一个通配字符,表示允许任意的 IP 进行连接。 `flush privileges;` 用来刷新MySQL系统权限的相关表 ## 再次连接,连接成功 完成上面的操作之后,再次使用 Navicat 进行连接,连接成功! 