windows下mysql服务局域网访问配置

随笔3个月前发布 彭康元
33 0 0

在局域网中访问本机(Windows)的MySQL服务器,需要确保MySQL服务器配置为允许远程访问,并且防火墙设置允许外部连接。以下是详细的步骤:

1. 修改MySQL配置文件允许远程访问

找到并编辑MySQL配置文件my.ini,该文件通常位于C:ProgramDataMySQLMySQL Server <version>my.ini
使用文本编辑器(如Notepad++)以管理员身份打开my.ini文件。
找到以下部分:

[mysqld]

在这部分中添加或修改以下内容:

bind-address = 0.0.0.0

这将使MySQL监听所有网络接口,而不仅仅是本地接口。

2. 重启MySQL服务

打开命令提示符PowerShell,以管理员身份运行。
输入以下命令以重启MySQL服务:

net stop mysql
net start mysql

或者,通过服务管理器重启MySQL服务:

Win + R,输入services.msc并回车。
找到MySQL服务,右键点击并选择重启

3. 创建允许远程访问的MySQL用户

打开MySQL命令行客户端,连接到MySQL服务器:

mysql -u root -p

输入你的MySQL root密码。
创建一个允许从任何主机访问的用户,并授予适当的权限:

CREATE USER 'wordpress_user'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'wordpress_user'@'%';
FLUSH PRIVILEGES;

这会创建一个名为wordpress_user的用户,密码为password,并允许该用户从任何主机连接。

4. 配置Windows防火墙以允许MySQL访问

打开Windows Defender 防火墙
点击高级设置
创建一个新的入站规则,允许TCP协议的3306端口(MySQL默认端口)的连接:

选择入站规则,点击新建规则
选择端口,然后点击下一步
选择TCP,并指定特定的本地端口为3306,点击下一步
选择允许连接,然后点击下一步
根据需要选择适用的配置文件(域、专用、公用),然后点击下一步
为规则命名(如MySQL Remote Access),点击完成

5. 获取本机的IP地址

打开命令提示符PowerShell,输入以下命令:

ipconfig

找到当前连接的网络适配器,记下IPv4地址(例如,192.168.1.100)。

6. 在局域网中的其他设备上测试连接

在局域网中其他设备的MySQL客户端中输入以下命令以连接到MySQL服务器:

mysql -h <你的本机IP地址> -u wordpress_user -p

输入密码password,如果成功连接,则表示配置成功。

通过这些步骤,你应该能够在局域网中的其他设备上访问本机(Windows)上的MySQL服务器。如果仍有问题,请检查防火墙和网络设置是否正确配置。
windows下mysql服务局域网访问配置

这段SQL命令的目的是在MySQL中创建一个新用户,并授予该用户访问所有数据库的所有权限。以下是每个命令的详细解释:

CREATE USER 'wordpress_user'@'%' IDENTIFIED BY 'password';

CREATE USER: 这是一个SQL命令,用于创建一个新的MySQL用户。
'wordpress_user'@'%': 这里指定了新用户的用户名和主机。'wordpress_user' 是用户名,'%' 表示允许该用户从任何主机连接到MySQL服务器。'%' 是一个通配符,表示所有IP地址。
IDENTIFIED BY 'password': 这是用户的密码。在这里,你需要将 'password' 替换为你想要设置的实际密码。
这条命令的作用是创建一个名为 wordpress_user 的新用户,并设置其密码为 password,同时允许该用户从任何主机连接到MySQL服务器。

GRANT ALL PRIVILEGES ON . TO 'wordpress_user'@'%';

GRANT ALL PRIVILEGES: 这是一个SQL命令,用于授予用户权限。ALL PRIVILEGES 表示授予所有可能的权限,包括 SELECT、INSERT、UPDATE、DELETE 等。
ON .:: 这里指定了权限的作用范围。*.* 表示所有数据库的所有表。第一个 * 表示所有数据库,第二个 * 表示所有表。
TO 'wordpress_user'@'%';: 这部分指定了要授予权限的用户,即 wordpress_user,并且允许该用户从任何主机连接。
这条命令的作用是授予 wordpress_user 用户对所有数据库和所有表的所有权限。

FLUSH PRIVILEGES;

FLUSH PRIVILEGES: 这是一个SQL命令,用于重新加载MySQL服务器的权限表。MySQL会在内存中缓存权限表,这条命令确保之前的权限变更立即生效,而不需要重启MySQL服务器。
这条命令的作用是刷新MySQL的权限缓存,以确保刚刚授予的权限立即生效。

总结:

第一条命令:创建一个名为 wordpress_user 的新用户,并设置密码,同时允许从任何主机连接。
第二条命令:授予 wordpress_user 用户对所有数据库和所有表的所有权限。
第三条命令:刷新权限缓存,使新创建的用户和授予的权限立即生效。

这些命令组合在一起,确保新用户 wordpress_user 可以从任何地方连接到MySQL服务器,并且拥有对所有数据库和表的完全控制权限。这对于像WordPress这样的应用程序需要完全访问数据库的情况非常有用。

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...