Ubuntu 20.04上安装和配置MySql5.7

此博客作为学习笔记使用,仅供用于学习,勿用于任何非法用途****

  1. Ubuntu换源
    ubuntu 20.04系统自带源直接安装是MySQL 8.0,我要安装MySQL 5.7的版本的所以先进行换源。

1.1 备份原来的sorce文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list.old

1.2 修改sources.list文件

sudo vim /etc/apt/sources.list 

我选择的是清华镜像源。将sources.list内容清空,然后选择一个源粘贴到sources.list,保存退出。

# 清华镜像源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse

1.3 更新镜像源和软件

# 更新镜像源
sudo apt-get update

# 更新软件
sudo apt-get upgrade     

  1. 安装mysql
    2.1 apt-get install 方式安装
    这种方式需要服务器能联网
# 执行下面安装命令

# 安装mysql5.7服务端
sudo apt-get install mysql-server-5.7

# 安装mysql5.7客户端
sudo apt-get install mysql-client-5.7

# 使用c/c++等语言操作mysql的动态链接库,如果不需要可不安装
sudo apt install libmysqlclient-dev

然后会出现一个界面,是设置MySQL的root用户密码,此密码需记住:
在这里插入图片描述
安装完成后查看mysql版本和服务

mysql -V    # 查看mysql版本

netstat -tap | grep mysql  # 查看mysql服务

在这里插入图片描述
如上图所示说明安装成功。

MySQL登录:(使用root用户登录数据库)
mysql -u root -p
然后输入你的root用户密码:
在这里插入图片描述
出现下面这个就是登录成功了:
在这里插入图片描述
远程连接MySQL
这里使用的是本机的Navicat 来连接阿里云服务器的数据库:
1.首先我们需要到阿里云的服务器上的防火墙/安全组中开放mysql的3306端口.
2.需要在Linux系统中(这里使用的是ubuntu 20.04)开启MySQL的3306端口:
(1)可以先查看自己是否已经开启了3306端口:

netstat -an|grep 3306

在这里插入图片描述
也可以使用端口扫描工具nmap,centos/Ubuntu系统的直接用yum安装就可以了,windows自行百度下载。

用法:

探测目标主机1-10000范围内所开放的所有端口

nmap 120.76.193.240  #写你自己的ip地址

在这里插入图片描述
查看固定端口:
在这里插入图片描述
显示open就说明我们的3306端口是开着的。
(2)如果没有开启3306端口,就需要开启一下3306端口:
放开3306端口:

firewall-cmd --zone=public --add-port=3306/tcp --permanent

重新加载配置:

firewall-cmd --reload

查看防火墙所有开放的端口:

systemctl status firewalld

如果3306端口还是没有开启,可以尝试使用一下命令:

vi /etc/mysql/mysql.conf.d/mysqld.cnf

将bind-address = 127.0.0.1注销​:
在这里插入图片描述
然后依次完成以下命令,123456是你自己的密码。

mysql -u root -p

然后输入你自己的mysql密码登录mysql

 grant all privileges on *.* to 'root'@'%' identified by '123456';
flush privileges;​

***最后,记得要重启一下你的服务器,不然有些配置可能无法生效 ***

sudo reboot

重启后,你就可以远程连接MySQL了.
这里的密码是你自己设置的MySQL中root用户的密码.

在这里插入图片描述

(3)防火墙命令:
1.启动防火墙:

systemctl start firewalld 
systemctl enable firewalld # 开机启动
systemctl disable firewalld # 取消开机启动

2.禁用防火墙:

systemctl stop firewalld

3.设置开机启动:

systemctl enable firewalld

4.停止并禁用开机启动

sytemctl disable firewalld

5.重启防火墙:

firewall-cmd --reload

6.查看状态:

systemctl status firewalld或者 firewall-cmd --state

7.查看版本:

firewall-cmd --version

8.查看帮助

firewall-cmd --help

9.查看区域信息:

firewall-cmd --get-active-zones

10.查看指定接口所属区域信息:

firewall-cmd --get-zone-of-interface=eth0

11.拒绝所有包:

firewall-cmd --panic-on

12.取消拒绝状态:

firewall-cmd --panic-off

13.查看是否拒绝

firewall-cmd --query-panic

14.将接口添加到区域(默认接口都在public):

firewall-cmd --zone=public --add-interface=eth0(永久生效再加上 --permanent 然后reload防火墙)

15.设置默认接口区域:

firewall-cmd --set-default-zone=public(立即生效,无需重启)

16.更新防火墙规则:

firewall-cmd --reload或firewall-cmd --complete-reload(两者的区别就是第一个无需断开连接,就是firewalld特性之一动态
添加规则,第二个需要断开连接,类似重启服务)

17.查看指定区域所有打开的端口

firewall-cmd --zone=public --list-ports

18.在指定区域打开端口(记得重启防火墙):

firewall-cmd --zone=public --add-port=80/tcp(永久生效再加上 --permanent)

说明:
–zone 作用域
–add-port=8080/tcp 添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
centos 7 以后是修改 firewall

文章配置部分借鉴于:https://blog.csdn.net/m0_46470316/article/details/111127185?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link

后续会在此博客继续更新mysql的有关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

渔戈

创作不易,如有帮助,请鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值