阿里云ECS服务器远程连接和数据库的配置踩坑记录

1. ECS服务器的连接

2. mysql数据库的配置

3. 在本地远程连接服务器上的mysql数据库

4. 在mysql中创建用户名并赋予权限

前段时间进行阿里云服务器的配置和在服务器上搭建mysql数据库,在此过程中踩过不少的坑,避免以后踩同样的坑,特此记录:

阿里云ECS服务器操作系统:ubuntu18.04.1

mysql数据库版本:5.7.26-0ubuntu0.18.04.1

本地操作系统:ubuntu19

1. ECS服务器的连接

在服务器控制台进行服务器的连接,这种连接方法网上有很多的教程 ,连接成功之后操作过程与在本地操作ubuntu系统一样。

以下来自阿里云官网文档:

阿里云SSH密钥是一种安全便捷的登陆认认证方式,由公钥和密钥组成,仅仅支持Linux实例。

关于SSH密钥的设置参考阿里云官方文档:
https://help.aliyun.com/document_detail/51792.html?spm=a2c4g.11174283.2.47.7ff952feOwD3Sc

注意点:
在配置ssh密钥之后要在本地和服务器的安全组上开通22端口号,负责无法进行连接
完全配置之后在本地打开终端进行连接:

# 确保本地的ssh服务已开通
ssh root@公网ip地址

2. mysql数据库的配置

  1. 在ECS服务器上安装mysql

在ECS服务器上安装mysql与在本地系统中安装mysql方法一样,这里通过命令行的方式进行安装。

安装mysql客户端与服务器

# 安装服务端
sudo apt-get install mysql-server
# 安装客户端
sudo apt install mysql-client
  1. 登陆mysql并修改密码

初次安装数据库过程中,mysql会创建一个root用户,主机地址为localhost,并且创建一个随机密码,但是标记密码已经过期,因此可以直接使用root用户直接进行登陆,此root账户具有所有权限

root用户权限比较大,一般不建议直接使用而是为特定数据库创建指定的用户

# 首次登陆mysql
mysql -u root 

MySQL的账户存储在mysql数据库的user表中,账户由用户名和客户端主机共同决定
在登录mysql之后,要为root账户设置密码

alert user user() identified by '密码'
# user()是获取当前用户名的函数 

# 在mysql的5.7版本中密码字段有所改变
# 设置密码
update  user set authentication_string=PASSWORD('密码')where user = 'root';
update user set plugin="mysql_native_password";
#   进行刷性
flush privileges;

#设密码之后重启mysql服务器
service mysql restart
  1. 忘记数据库root密码如何进行修改

如果忘记mysql的root密码或者更改密码后无法登陆root用户则使用以下方法重置root密码

  • 第一步:停止mysql服务
service mysql restart
  • 第二步:修改/etc/mysql/mysql.cnf文件
修改my.cnf文件,在文件新增 skip-grant-tables
表示在启动mysql时不启动grant-tables授权表

$ vim /etc/mysql/my.cnf

# 添加以下内容
[mysqld]
skip-grant-tables
  • 第三步:重新设置密码
update  user set authentication_string=PASSWORD('密码'where user = 'root';
  • 第四步:删除/eyc/mysql/mysql.cnf文件中添加的信息
  • 第五步:重新启动mysql服务并使用root账户进行登陆

3. 在本地远程连接服务器上的mysql数据库

MySQL服务器使用单个套接字监听tcp/ip,并绑定到单个ip地址,单地址可以绑定到多个网络接口,地址类型可以是IPv4、IPv6或者主机名,如果是主机名则解析为ip地址并绑定到该地址,如果是多个ip地址则绑定第一个。

在mysql的配置文件中有地址属性:bind_address

MySQL的配置文件位置:/etc/mysql/mysql.conf.d

如果bing_address地址为*:则表示所有服务器接口上的ip4和ip6地址链接

如果bing_address地址为0.0.0.0:则表示mysql服务器接受所有的服务器注解IPv4接口上的TCP / IP链接

如果bing_address地址是::,则服务器接受所有服务器主机IPv4和IPv6接口上的TCP / IP连接

设置好连接属性之后输入以下命令进行连接

mysql -h ip地址 -u 主机名 -p

4. 在mysql中创建用户名并赋予权限

为mysql创建用户

CREATE USER 'username'@'%' IDENTIFIED BY '密码'; 

username为创建的用户名
%表示所有的主机均可使用此用户名链接数据库,如果在本机进行链接则指定为localhost,也可以指定ip进行链接

-- 查看用户权限--
show grants for root@'localhost';

未完。。。

你可能感兴趣的:(linux,ecs,mysql)