连接MySQL服务器数据库

前言

使用 HeidiSQL 连接服务器数据库,非常简单,选择 MySQL 网络类型,输入用户名、密码即可。但是可能会报这样的错:Can't connect to MySQL server on 'ip地址'(10061),为什么呢??

理由也很简单:服务器没有配置 MySQL ,以下是 CentOS 的教程

安装mysql数据库

  1. 下载 mysql 源安装包

    wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

  2. 安装 mysql 源

    yum localinstall mysql57-community-release-el7-8.noarch.rpm

    若结尾出现complete!,则说明MySQL源安装完成

  3. 检测是否安装完成

    yum repolist enabled | grep "mysql.*-community.*"

  img

  1. 安装 mysql

    yum install mysql-community-server

    若结尾出现Complete!, 则MySQL安装完成

  2. 设置开启启动 mysql 服务

    systemctl enable mysqld

  3. 查看安装的 mysql 版本

    rpm -aq | grep -i mysql

    img

  1. 启动 MySQL 服务

    systemctl restart mysqld

  2. 查看MySQL初始密码

    grep 'A temporary password' /var/log/mysqld.log

  img

  1. 更改MySQL密码

    mysqladmin -u root -p'旧密码' password '新密码'

    img

  这里更改密码出了问题,更改失败,这是因为密码太过简单的原因。有两个接解决方法:

  • 把密码设置复杂点(这是最直接的方法)
  • 关闭 mysql 密码强度验证(validate_password)
    • 编辑配置文件:vim /etc/my.cnf, 增加这么一行 validate_password=off
    • 编辑后重启 mysql 服务:systemctl restart mysqld
  1. 设置 mysql 能够远程访问

    • 登录进 MySQL:mysql -uroot -p密码
  • 执行 use mysql;
  • 增加一个用户给予访问权限:grant all privileges on *.* to '用户名'@'ip地址' identified by '密码' with grant option; //可将ip改为%,表示开启所有的 img

  - 最后需要 flush privileges; 强制刷新权限

配置阿里云服务器

在服务器的配置页,点开 安全 —> 防火墙,添加 MYSQL 应用类型;

重启服务器

连接

完成以上操作,连接成功!

其他

退出 MySQL 的方法

  • 最简单 \q

  • Exit; 带分号

  • Quit: