【RPi系列】阿里云服务器ECS安装MySQL并通过Navicat实现远程连接

116 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第34天,点击查看活动详情.


一、简介

  安装Mysql为了后续将传感器采集到的数据存入云服务器做准备,并通过Navicat远程连接方便操作。 Navicat

二、CentOS8安装MySQL

1、有的服务器可能会自带mysql或者自己之前已经安装过了,那么就需要先检查一下是否安装

# 检查是否安装过mysql
rpm -qa | grep -i mysql

# 检查是否安装过mariadb
# mariadb是mysql的一个分支,可能和之后我们安装的mysql产生冲突
rpm -qa | grep mariadb

2、卸载之前的安装

rpm -e --nodeps 软件名 //强力删除,对相关依赖的文件也进行强力删除

3、由于centOS8中自带mysql安装包,所以我们可以直接安装即可,不需要再从官网进行下载。

sudo dnf install @mysql

4、安装完成后重启控制台,并创建systemctl 的对mysql服务的配置文件

touch /usr/lib/systemd/system/mysql.service

5、启动 MySQL 服务并且启用开机启动功能

sudo systemctl enable --now mysqld

6、检查 MySQL 服务器是否正在运行

sudo systemctl status mysqld

显示绿色active即为正在运行 在这里插入图片描述 7、运行mysql_secure_installation脚本,执行一些安全相关的操作,并且设置 MySQL root 用户密码,选择项都选择y即可

sudo mysql_secure_installation

8、测试root用户访问

mysql -u root -p

正确输入用户名、密码即可登录成功 在这里插入图片描述

三、Navicat远程连接

1、首先从阿里云服务器的安全组开放3306端口 在这里插入图片描述 2、确定mysql服务正常启动

netstat -talnp

查看mysql服务端口是否正常 在这里插入图片描述 3、进入数据库远程授权

mysql -uroot -p123456
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
# 刷新权限
mysql> FLUSH PRIVILEGES;

# MySQL8.0及之后的,设置远程连接权限要用下面的语句
create user root@'%' identified by '123456';
grant all privileges on *.* to root@'%' with grant option;

4、查看远程授权状态

mysql> use mysql;
mysql> select host,user from user;

当user 为root 对应的 host为%设置成功,表示所有主机都可以连接到mysql数据库 在这里插入图片描述 5、使用Navicat远程连接数据库

在这里插入图片描述 再选择SSH通道连接 在这里插入图片描述 点击连接测试,如果连接成功,之后即可通过Navicat对其进行数据库操作。