记如何实现阿里云服务器安装mysql以及远程连接
阿里云服务器下载安装mysql
1、首先在清理阿里云服务器磁盘(由于之前我的服务器比较混乱,所以我选择了清理磁盘)
我采用了阿里云app进行清理磁盘,选择你需要安装的云服务器实例,暂停运行,并选择磁盘,进行重新初始化磁盘操作(清理磁盘前需要先停止实例)。
2、安装环境(我的是阿里的linux系统64位)
cat /etc/os-release
执行效果如下:
getconf LONG_BIT
执行效果如下:
可以看的出来我的是centos Linux 7 64 位;
3、查看自己的服务器是否存在与mysql相关的文件,我之前有清理过磁盘,但依然存在mysql相关的文件。
查看是否有mysql文件命令:
find / -name mysql(注意大小写,大写会提示Find command not found)
执行效果如下:(只是列出样式结构,实际并不是这样)
如果存在mysql相关文件,可以使用下面这条语句来执行删除操作;
删除mysql文件命令:
find / -name mysql|xargs rm -rf;
删除后没有提示,可以使用查询命令再次查询一下是否成功删除。
4、接下来就是安装步骤:
rpm -Uvh https://repo.mysql.com/mysql57-community-release-el7-11.noarch.rpm
后面的链接是mysql57-community-release-el7-11.noarch.rpm文件的下载链接,在输入命令之前可以检查一下该连接是否有效。该命令运行完会出现两行###########100%提示信息。
yum --enablerepo=mysql80-community install mysql-community-server
之后可以输入上面的命令,该命令执行时间稍微有点长,在执行之中会出现两次选择,第一次是问你该文件大小为多少,是否确定下载,选择输入Y继续下载,第二个是检索key,是否导入GPG,同样输入Y选择是。
之后需要等待一段时间,直到输出Complete!
5、接下来查看mysql状态
查看mysql状态:
service mysqld start
该命令输出结果为:Redirecting to /bin/systemctl start mysqld.service
查看mysql的默认密码:(我下载的是mysql8.0)
grep “A temporary password” /var/log/mysqld.log
输出中root@localhost:后面那一串即为默认密码
6、配置mysql
命令
mysql_secure_installation
会提示输入旧密码,也就是之前的默认密码(即root@localhost后面的那一串),之后需要输入新密码,再次确认新密码(值得注意的是,所有的密码输入都是不可见的,即会感觉不到密码的输入,但其实是输入的,如果输错了,可以删除)。
当两次密码确认无误后,会提示选项需要选择。
1、是否安装验证密码所需的插件?选择Y
2、密码的强度选择,选择1;
3、密码强度为100,是否还需要更改。选择n,我之前不小心选择了y,他会重新从输入密码开始。
4、是否删除匿名用户?选择Y
5、是否禁止远程登录?选择N
6、是否移除test数据库?选择Y
7、是否立即生效,选择Y
7、登录数据库,查看数据库
登录数据库
mysql -u root -p;
查看数据库
show database;
使用navicat远程连接数据库
1、首先去阿里云服务器官网或者登录阿里云app,修改安全组,如图所示
该配置主要是用于打开mysql的3306端口。
接下来登录mysql,使用
命令:
use mysql;
查询user表,可以得到以下图,由于我已经打开远程权限,所以user对应的host为%,如果没有打开远程权限,对应的是localhost;可以使用以下方法打开远程权限;
第一种
直接使用:update user set host = ‘%’ where user = ‘root’;
将表中user为root所对应的host改成%
第二种
在登录mysql后,即使用mysql -u root - p登录之后,使用以下命令修改
GRANT ALL PRIVILEGES ON * .* TO ‘root’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
最后别忘记刷新:
FLUSH PRIVILEGES(不刷新的话不生效)
由于使用的是mysql8.0的版本,加密方式有所变化,会导致远程连接依旧不行,需要修改加密方式,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”,所以需要修改成以前的mysql_native_password。
2、修改加密方式,首先登陆数据库,然后执行以下代码:
use mysql;
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;(这里需要注意的是,由于前修改过root对应的host名称为%,所以localhost应该改为%,否则会报错。)
FLUSH PRIVILEGES;
之后就可以使用navicat进行远程连接。
附:参考链接:https://blog.csdn.net/u012600606/article/details/80840197
参考这位大佬的博客,成功搭建好mysql的环境以及安装,很感谢!