欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

在阿里云上安装MySQL并配置远程连接

程序员文章站 2022-04-14 10:44:51
...

最近课程设计要求部署一个MySQL数据库来存储数据,要求多台电脑都能连接到该数据库,于是决定把它部署在我的阿里云上。

MySQL的安装

我的阿里云服务器目前安装的Ubuntu 16.04,利用MySQL APT Repository来安装不是很复杂。

首先要下载该 .deb 包Download MySQL APT Repository

我下载到的是 mysql-apt-config_0.8.10-1_all.deb ,便可以执行下列命令

sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb

更新包的信息

sudo apt-get update

利用apt-get install来安装MySQL

sudo apt-get install mysql-server

等待一会就安装好啦,中间会要求设置密码等,按着流程走。

配置远程连接

  • 修改user表:
mysql> use mysql;
mysql> select User,host from user;

如果root的host为localhost,执行下面语句把它改为’%’

mysql> update user set host = '%' where user = 'root';
  • 找到my.cnf,注释掉其中的bind-address属性,如果没有就忽略该步骤,一般在/etc/mysql/下面,具体情况根据实际而定。

  • 开启阿里云安全组端口策略,进入云服务器ECS,网络和安全->安全组->配置规则,将MySQL监听端口开放即可,如下:
    在阿里云上安装MySQL并配置远程连接

成功后的状态
在阿里云上安装MySQL并配置远程连接

连接测试

aaa@qq.com:~$ mysql -u root -h 服务器ip地址 -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 33
Server version: 8.0.11 MySQL Community Server - GPL

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

上面表示连接成功。

有可能会出现连接错误,在mysql5.7环境里,虽然可以设置default_authentication_plugin来改变认证加密方式,但是一般人不会去设置。在mysql8.0下,默认变成了default_authentication_plugin=caching_sha2_password,必须用8.0自带的mysql客户端才行,不然就连接不上数据库,但是可以改回旧的方式的。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourpassword';

这样的兼容性问题就得以解决了。

顺便说一句,MySQL中的默认字符集变为utf8mb4,如果在建表时指定默认字符为utf8会报warning的,而且删除不存在的表等也会报warning。

建议看一下MySQL 8.0的新特性

MySQL官方网站: What Is New in MySQL 8.0

MySQL 8.0 正式版 8.0.11 发布:比 MySQL 5.7 快 2 倍