当前位置:首页 > CN2资讯 > 正文内容

windows server 12 安装mysql windows2012安装mysql5.7

7小时前CN2资讯

MySQL 5.7.13远程安装指南(Windows server 2012 R2)

  • 前言
  • 安装MySQL 5.7.13
  • 解压建议
  • 创建.ini文件
  • 安装MySQL服务
  • 配置MySQL 5.7.13
  • 创建任意IP远程登陆root用户(服务器)
  • 建立Path(服务器)
  • 设置防火墙3306规则(服务器)
  • 检查阿里云服务器开放端口(控制台)
  • Navicat Premium 12远程连接数据库(客户层)
  • 总结

前言

博主是个小萌新,在读物联网专业,这些天因为疫情在家无聊透顶,想着试着做一下以前没有做到的,用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 版本 或者直接点击下面这个下载链接,当然也是官网的直接下载(如果这个链接没失效的话)

解压建议

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

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

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

    [client] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] # 设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=C:\\mysql5713 # 设置 mysql数据库的数据的存放目录 datadir=C:\\mysql5713\\data # 允许最大连接数 max_connections=100 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8mb4 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB

    安装MySQL服务

  • 在bin目录下,对着空白处按下 Shift+鼠标右键 打开命令行(或者 Win+R输入 cmd 然后 cd C:\mysql5713\bin)
  • CMDmysqld --initialize --console GET2020-02-02T08:41:14.514016Z 1 [Note] A temporary password is generated for root@localhost: /8Xjr?k:9Pkn 后面加粗的部分 /8Xjr?k:9Pkn 就是root初始密码
  • CMDmysqld install GETService successfully installed.
  • CMDnet start mysql GETMySQL 服务正在启动 . MySQL 服务已经启动成功。
  • CMDmysql -u root -p GETEnter password:
  • CMD************ (就是刚刚上面获得的密码) GETWelcome 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>
  • 某些人可能会遇到这样的情况:输入完密码,回车ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 挺好……因为我第二次重新安装就发现遇到了这个坑:第一,不要怀疑,我的密码大小写正确;第二,我试过某些方法,比如在my.ini的[mysqld]下一行添加skip-grant-tables再尝试,嗯可以进去,但是设置不了密码,叽里呱啦……反正就是这方法也不得,如果你们有其他的问题,可以参见这个博客在MySQL登录时出现Access denied for user 'r…… 很明显,我失败了。卸载那是不可能的,这方法是ZIP安装,万一弄到注册表一个个删除,我可不干,直接说方法吧。 ① 进入bin目录的cmd,执行net stop mysql; ② 动动手指,把mysql5713目录下的data删了; ③ 在cmd输入mysqld.exe remove,移除服务成功; ④ 重新安装,跟第一步一样,mysqld --initialize --console,于是又得到了一个密码**********; ⑤ 再次mysql -u root -p输入得到的这个新的密码**********,可以进去。如果你的还不行,再多试两次,不要超过三次,毕竟事不过三。

  • 修改密码,激活用户mysql> set password = '12345678';Query OK, 0 rows affected (0.01 sec)mysql> alter user 'root'@'localhost' password expire 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用户(服务器)

  • 创建新的root任意IP可访问的用户,注意,原先的localhost并没有去掉(我也不知道为啥,但就是用户列表有它,这不重要,重要的是原先的root已经被替换掉了)mysql> create user 'root'@'%' identified by '12345678'; Query OK, 0 rows affected (0.01 sec)
  • 授予该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规则(服务器)

  • 打开系统防火墙设置;
  • 点击左侧的高级设置;
  • 右击入站规则 → 新建规则 → 端口 → TCP/特定端口3306 → 允许连接 → 域/专用/公用 都✔勾上 → 名称任意 → 确定;
  • 检查阿里云服务器开放端口(控制台)

    我之前就是死在这个坑的,必须提一下

    进入阿里云服务器管理控制台,找到你的实例所在的安全组(看图左上角,我的服务器是在张家口)具体入口可以自己摸索。

    然后点击 配置规则

    点击右上角 快速创建规则 ,然后如下图填写确定

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

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

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

    ,测试连接,成功。

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

    总结

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

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

      你可能想看:

      扫描二维码推送至手机访问。

      版权声明:本文由皇冠云发布,如需转载请注明出处。

      本文链接:https://www.idchg.com/info/29193.html

      分享给朋友:

      “windows server 12 安装mysql windows2012安装mysql5.7” 的相关文章

      尼日利亚VPS:低成本高性能的服务器托管解决方案

      尼日利亚VPS的定义与优势 尼日利亚VPS是一种基于虚拟化技术的服务器托管服务,专为尼日利亚及周边地区的用户设计。VPS(Virtual Private Server)允许用户在共享的物理服务器上拥有独立的虚拟环境,享有更高的资源分配和操作自由度。对于尼日利亚的用户来说,本地数据中心的存在意味着更低...

      eno VPS:掌握网络接口命名规则与性能优化技巧

      在了解eno VPS之前,我们先来看看什么是eno命名规则。ena作为一种网络接口命名方式,通过特定的规则来表示Linux系统中的网络设备。这种规则帮助用户更容易地识别和管理各种网络接口。具体来说,eno采用的是eno[n|d]的格式,主要用于板载设备。而对于热插拔设备,则使用ens[f][n|d]...

      IDC托管便宜还是公有云便宜?全面解析成本优势与选择指导

      在选择IT基础设施时,我发现IDC托管和公有云服务是两个普遍关注的选项。很多企业在进行服务器部署时都在思考“IDC托管便宜还是公有云便宜?”为了帮助大家更好地理解,我决定从几个关键方面进行深入分析。 IDC托管的价格构成 在开始探讨具体价格前,我们有必要理清IDC托管的价格构成。基本上,IDC托管费...

      宝塔安装全攻略:轻松管理你的服务器与网站

      宝塔面板,凭借其简单易用的特性,已经成为很多用户搭建和管理网站的首选工具。作为一款开源的服务器管理软件,宝塔面板提供了丰富的功能和灵活的操作方式,让无论是新手还是经验丰富的用户都能轻松上手。我在使用宝塔面板的过程中,深刻体会到它带来的便利和高效。 功能与特点 宝塔面板最大的一大优势在于其直观的用户界...

      深入了解DC9飞机的历史、技术特点与运营经验

      DC9概述 了解DC9这款飞机,首先得从它的历史说起。DC9,或称道格拉斯DC-9,是由道格拉斯飞机公司设计制造的中短程单通道喷气式客机。这款飞机的诞生可以追溯到20世纪60年代。道格拉斯公司在这段时间逐步崛起,骄傲地推出了DC9作为回应当时日益增长的民航市场需求。最初的设计版本虽然体积不大,但凭借...

      宝塔面板PHP扩展新增指南:提升网站性能的实用技巧

      在日常网站管理和服务器配置中,宝塔面板的出现让这一切变得更为简单直观。作为一个流行的服务器控制面板,宝塔面板以其用户友好的界面和丰富的功能备受欢迎。对于没有技术背景的用户来说,它提供了极大的便利,而对于开发者来说,宝塔也能高效管理复杂的服务器配置。 宝塔面板不仅支持多种服务器环境,还能够轻松管理数据...