在阿里云Windows服务器下安装MySQL5.7.25并配置远程访问

在阿里云Windows服务器下安装MySQL5.7.25并配置远程访问

网上有一些关于此方面的文章,但是自身去实践时,还是出现了不少问题。
我先用本地的计算机远程访问阿里云服务器进行配置,先在官网上下载MySQL5.7,地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads,
然后选择此版本:Windows (x86, 64-bit), ZIP Archive下载。下载完成后进行解压。
然后需要在安装目录新建一个文件:my.ini。

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

将MySQL安装目录加入环境变量,直接在path中添加路径即可,此不多说。
然后在命令行中(用cmd打开)输入

mysqld install

再来执行mysql初始化的命令:

mysqld --initialize-insecure --user=mysql

执行这个命名,我们启动我们的mysql:

net start mysql

又是这个命令会报错,说不是内部或外部命令,此时在网上需要将此命令路径加入环境变量即可;或者出现启动有问题,则需要将安装目录中data文件夹删除,再在命令行输入:

mysqld --initialize-insecure --user=mysql

启动MySQL之后,root用户的密码为空,设置密码,命令如下:

mysql -uroot -p

直接回车即可
接下来修改密码

1.    net stop mysql             (停止服务)
2.    mysqld --skip-grant-tables                再执行mysqld --skip-grant-tables开启无密码的MySQL Server。
3.    新开一个终端,输入mysql -u root -p进入mysql
4.    然后更新root账户的密码为'你的密码'
update mysql.user set authentication_string=password("你的密码") where user="root";
5.   flush privileges;          执行刷新权限。
6.   quit;
7.	 输入mysql -u root -p进入mysql 输入密码root
8.再次更改密码:
	step 1: SET PASSWORD = PASSWORD('your new password');
	step 2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
	step 3: flush privileges;
9.再次打开cmd 重新登录

此时本地配置即可,需要能够使用远程访问

1、首先到mysql5.7的安装目录下,进入bin目录,然后按住shift鼠标右键,选择在此处打开命令窗口

2、登录mysql,输入mysql  -uroot -p

3、按回车键,输入密码

4、切换到mysql数据库,输入命令use mysql;

5、开启远程连接,输入命令GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

6、刷新权限,命令为:FLUSH PRIVILEGES;

7、重启mysql服务
8.查看用户权限:
use mysql;
select host,user from user; 

出现% root,即为成功
在阿里云Windows服务器下安装MySQL5.7.25并配置远程访问

以上这些都可以在其他文章中看到,各有借鉴。谢谢哈,但是并没有解决我的问题,我用python远程连接MySQL,失败。
因为是阿里云服务器,所以检查一下各个端口开放了没。在阿里云Windows服务器下安装MySQL5.7.25并配置远程访问
防火墙设置也需要给MySQL设置权限
在阿里云Windows服务器下安装MySQL5.7.25并配置远程访问

BUT,还是不行,在这过程中,我在Windows后台看了下MySQL是否运行,并没有,而且使用

net start mysql ,net stop mysql

不能成功,所以配了一下午,决定明天再配。期间又重新解压了一遍MySQL5.7安装包,替换原文件。第二天

net start mysql

可以用了,后台进程(win+R,然后输入services.msc)显示MySQL正在运行,于是怀着期盼再次远程连接,失败。想了想,或许服务器本地Windows Defender 防火墙需要配置在阿里云Windows服务器下安装MySQL5.7.25并配置远程访问
另外加上MySQL 和mysqld应用,其他全部允许(防止关联)。
最后成功了,哈哈!!!