阿里云部署数据库(遇到的问题及解决方案)

阿里云部署数据库(遇到的问题及解决方案)

      • 1、起因:安装数据库
      • 2、遇到的问题:
        • 问题:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
        • 问题:1045 - Access denied for user 'root' @'101.247.128.187' (using password: YES)
        • 2.1数据库连接不上,而且宝塔也等不上
        • 2.2华为云连不上数据库问题?

1、起因:安装数据库

(一)安装宝塔命令

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

阿里云部署数据库(遇到的问题及解决方案)_第1张图片
(二)宝塔内安装好mysql数据库,命令查看
阿里云部署数据库(遇到的问题及解决方案)_第2张图片

1、修改root的host

update mysql.user set host='%' where user='root';

2、修改数据库密码

update mysql.user set password=passworD("test") where user='root';

3、选择你要操作的数据库

use mysql;

4、 给root账户授权(root默认只有本机访问的权限,要通过其他机器访问,必须授权)

GRANT ALL PRIVILEGES ON *.* TO'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

5、 最后刷新数据库服务

flush privileges;

(三)防火墙问题
必须保证关闭所有防火墙,因为阿里云自带

启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld 
开机禁用  : systemctl disable firewalld
开机启用  : systemctl enable firewalld

(四)阿里云安全组规则-入方向

保证需要的端口都打开

2、遇到的问题:

问题:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
问题:1045 - Access denied for user ‘root’ @‘101.247.128.187’ (using password: YES)

1、修改root密码的命令;

update user set authentication_string=password("yourNewPassword") where User='root';
执行后报错  ERROR 1054(42S22) Unknown column 'password' in ‘field list’

错误的原因是 5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

遇到上诉问题后,先在xshell中修改root密码,然后到宝塔中修改root面,就ok了;

2.1数据库连接不上,而且宝塔也等不上

原因:阿里云防火墙关闭
1、通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。
2、通过systemctl start firewalld开启防火墙,再次出现Failed to start firewalld.service:Unit is masked 错误,下面为解决方法:
(1)执行命令,即可实现取消服务的锁定

[root@VM_0_14_centos ~]# systemctl unmask firewalld

(2)下次需要锁定该服务时执行

[root@VM_0_14_centos ~]# systemctl mask firewalld

3、通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。
4、再次通过systemctl status firewalld查看firewalld状态,显示running即已开启了。
5、登上了宝塔,随后在宝塔安全组中放开3306端口,Navicat即可连接成功;

退出:quit

2.2华为云连不上数据库问题?

首先华为云使用的是docker安装的mysql

//docker状态
systemctl status docker
//重启docker状态
systemctl restart docker.service
//查看列表
docker ps -a
//启动
docker start 'id'

//防火墙状态
systemctl status firewalld
//防火墙开启3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent

在这里插入图片描述

你可能感兴趣的:(Linux及云服务器,阿里云,数据库,mysql)