MySQL 5.7.13安装指南(针对服务器Windows server 2012 R2)

前言

博主是个小萌新,在读物联网专业,这些天因为疫情在家无聊透顶,想着试着做一下以前没有做到的,用Java程序连接服务器上的数据库(以前做过但是是localhost的,而且因为是课设又没接触过数据库所以半星期赶着学了MySQL)。

这几天就试着完成之前没能做到的事情,先说说情况吧:

首先假设外网IP
本机(我的笔记本):192.168.1.1
服务器:101.101.0.1

第一天:下载安装了MySQL8+版本,结果一大堆新的验证方式和格式不熟悉,但勉强能够localhsot连接了,试着用本机连接服务器的MySQL,报错,摸索了一番,度娘进行操作,跟第二天一样。

第二天:修改了各种设置,包括升级了用户权限,关闭了防火墙,甚至连本机的防火墙都关了,3306规则也设置了,360防护也关了,但愣是无法远程连接(我起初以为是MySQL8+有什么重要改变了),而且,本机Ping 101.101.0.1是通的,telnet 101.101.0.1没有试,因为本机的系统好像Telnet服务有问题,一天就这么被耗没了。

第三天:在VMware上面安装了WinXP,em……因为XP的Telnet服务好用些,于是Telnet 101.101.0.1 3306,结果失败。度娘也救了我几天,救不了。本来打算重置服务器实例的,突然想到,是不是服务器本身就有端口入口没打开,后来一查控制台,果真如此。阿里云的服务器ECS默认不开放3306……一波操作后,本机能访问服务器的MySQL了(当然是用Navicat Premium 12)。
于是我试着开始写Java程序,包括使用JDBC来试着访问服务器的数据库,理所当然的失败了,具体原因我还得再摸索,但MySQL8+确实不适合我,于是就换回了以前使用的MySQL5.7.13,于是就有了本文。

安装MySQL 5.7.13

本操作都是在服务器上进行
官网直达:MySQL Community Server
进入后点击 Archives 选择 5.7.13 的64位 ZIP 版本
或者直接点击下面这个下载链接,当然也是官网的
直接下载(如果这个链接没失效的话)

解压建议

  1. 因为是服务器,所以放在最方便的位置就好了;
  2. 又因为需要经常折腾,改名字简单点就好了;
  3. 于是就得到如下文件夹:C:\mysql5713

创建.ini文件

在C:\mysql5713\bin 目录外,也就是C:\mysql5713 新建一个my.ini的文件,并把它原先的 my-default.ini 删掉或者 .txt 化。

my.ini内容如下:
该部分安装参考 菜鸟教程MySQL版块

扫描二维码关注公众号,回复: 8973320 查看本文章
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=C:\\mysql5713
# 设置 mysql数据库的数据的存放目录
datadir=C:\\mysql5713\\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

安装MySQL服务

  1. 在bin目录下,对着空白处按下 Shift+鼠标右键 打开命令行(或者 Win+R输入 cmd 然后 cd C:\mysql5713\bin)

  2. CMD
    mysqld --initialize --console
    GET
    2020-02-02T08:41:14.514016Z 1 [Note] A temporary password is generated for root@localhost: /8Xjr?k:9Pkn
    后面加粗的部分 /8Xjr?k:9Pkn 就是root初始密码

  3. CMD
    mysqld install
    GET
    Service successfully installed.

  4. CMD
    net start mysql
    GET
    MySQL 服务正在启动 . MySQL 服务已经启动成功。

  5. CMD
    mysql -u root -p
    GET
    Enter password:

  6. CMD
    ************ (就是刚刚上面获得的密码)
    GET
    Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.13…Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.……………
    mysql>

  7. 修改密码,激活用户
    mysql> set password = '12345678';
    Query OK, 0 rows affected (0.01 sec)

    mysql> alter user 'root'@'localhost' password expir never;
    Query OK, 0 rows affected (0.00 sec)

    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

    这样,下次你使用root登陆就是使用新的密码12345678

配置MySQL 5.7.13

本操作可能是在服务器上或者阿里云控制台进行

创建任意IP远程登陆root用户(服务器)

  1. 创建新的root任意IP可访问的用户,注意,原先的localhost并没有去掉(我也不知道为啥,但就是用户列表有它,这不重要,重要的是原先的root已经被替换掉了)
    mysql> create user 'root'@'%' identified by '12345678'; Query OK, 0 rows affected (0.01 sec)
  2. 授予该root权限
    mysql> grant all privileges on *.* to 'root'@'%' with grant option;
    Query OK, 0 rows affected (0.00 sec)

建立Path(服务器)

右键 这台电脑高级系统设置环境变量 → 找到系统变量的 Path 编辑 末尾添加 ;C:\mysql5713\bin
这样一来,就可以直接通过cmd访问MySQL了,虽然这在服务器上好像用处不大(我猜的,因为我用的是可视化数据库管理)

设置防火墙3306规则(服务器)

  1. 打开系统防火墙设置;
  2. 点击左侧的高级设置;
  3. 右击入站规则 → 新建规则 → 端口 → TCP/特定端口3306 → 允许连接 → 域/专用/公用 都✔勾上 → 名称任意 → 确定;

检查阿里云服务器开放端口(控制台)

我之前就是死在这个坑的,必须提一下
进入阿里云服务器管理控制台,找到你的实例所在的安全组(看图左上角,我的服务器是在张家口)具体入口可以自己摸索。
安全组
然后点击 配置规则配置规则
点击右上角 快速创建规则 ,然后如下图填写确定

添加规则
到此该部分结束,算是大功告成了,下一步试着连接,等等,别忘了,在控制台重启你的服务器实例

Navicat Premium 12远程连接数据库(客户层)

这时基本也就弄好了,那我们就验证一下,在我的笔记本电脑上打开Navicat Premium,新建连接,照着服务器公网IP填写,端口3306,填写%的root(非localhost root)和密码
,测试连接,成功。
测试连接成功

如果一个阿里云ECS从创建镜像一直安装到这步,没有改动其他的设置,是无法Ping 的,除非在系统防火墙那新加一个规则,这里就不细说了,度娘走起,另外也无法使用telnet,去控制台配置,也不多说了,但最最最重要的,数据库连接上了,是吧,这才是本文的目的

总结

要想远程任意IP对服务器实例的MySQL数据库进行访问,最好做到如下几点:

  1. 安装MySQL,填写配置文件 .ini,网上有些是连接本地的或者固定IP的才填写127.0.0.1之类的,不要照搬;
  2. 创建新的用户,这个用户是%级别,也就是任意IP可访问,并给予这用户足够的权限,在MySQL8+中,要想远程访问还需要开启允许远程访问,也就是grant all privileges on *.* to 'root'@'%' identified by '12345678' with grant option;一下,具体是啥一时间忘了,现在是5.7.13就不理这个了;
  3. 打开服务器系统防火墙的3306端口;
  4. 检查服务器控制台是不是允许了3306端口入内,如果没有就给安全组添加新的规则,让任意IP可访问3306端口。

做到以上4步,应该是基本可以远程连接数据库的了。

发布了7 篇原创文章 · 获赞 3 · 访问量 674

猜你喜欢

转载自blog.csdn.net/qq_43634664/article/details/104146444
今日推荐