Windows部署Mysql且设置对外访问


一、pandas是什么?

1. 下载

https://downloads.mysql.com/archives/community/

2. 创建配置

解压到D盘
在D:\mysql-5.7.40-winx64文件夹下面新建一个my.ini文件和一个data文件夹
编辑my.ini内容:

[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\\mysql-5.7.40-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\mysql-5.7.40-winx64\\data
# 允许最大连接数
default_authentication_plugin=mysql_native_password
sql_mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
max_connections=2048
transaction_isolation = READ-COMMITTED
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
lower_case_table_names = 1
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

3. 配置windows系统环境变量

MYSQL_HOME D:\mysql-5.7.40-winx64\bin

4. 初始化

cd D:\mysql-5.7.40-winx64\bin
执行初始化命令mysqld --initialize --user=mysql --console
会生成一个临时密码(要复制下来)

5. 开机自启服务

  • 接着就是输入mysqld -install进行服务的添加
  • net start mysql 启动mysql

6. 登录mysql修改root密码

mysql -uroot -p

粘贴上面复制的临时密码
然后修改密码

set password = password('新密码');

二、对外访问设置

你的理解基本上是正确的。不过,我可以详细说明一下这两条 GRANT 语句的具体作用以及它们的区别:

1. 第一条 GRANT 语句

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.2' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

功能解释:

  • ALL PRIVILEGES:授予所有权限,包括 SELECTINSERTUPDATEDELETECREATEDROP 等等。
  • ON *.*:权限作用于所有数据库和所有表。
  • TO 'root'@'192.168.1.2':将这些权限授予用户名为 root 的用户,该用户只能从 IP 地址 192.168.1.2 登录。
  • IDENTIFIED BY 'mypassword':为用户 root 设置密码为 mypassword。如果该用户已经存在,此部分不会更改密码,除非密码需要被重置。
  • WITH GRANT OPTION:允许 root 用户将其拥有的权限授予其他用户。

总结:这条语句允许 root 用户从 IP 地址 192.168.1.2 登录 MySQL 并对所有数据库和表进行所有操作。同时,root 用户可以将这些权限授予其他用户。

2. 第二条 GRANT 语句

GRANT ALL PRIVILEGES ON mydb.* TO 'other'@'192.168.1.2' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

功能解释:

  • ALL PRIVILEGES:授予所有权限,包括 SELECTINSERTUPDATEDELETE 等等。
  • ON mydb.*:权限作用于数据库 mydb 中的所有表。
  • TO 'other'@'192.168.1.2':将这些权限授予用户名为 other 的用户,该用户只能从 IP 地址 192.168.1.2 登录。
  • IDENTIFIED BY 'mypassword':为用户 other 设置密码为 mypassword。如果该用户已经存在,此部分不会更改密码,除非密码需要被重置。
  • WITH GRANT OPTION:允许 other 用户将其拥有的权限授予其他用户。

总结:这条语句允许 other 用户从 IP 地址 192.168.1.2 登录 MySQL 并对 mydb 数据库中的所有表进行所有操作。同时,other 用户可以将这些权限授予其他用户。

区别和总结

  • 权限范围

    • 第一条语句授予 root 用户对所有数据库和表的所有权限。
    • 第二条语句授予 other 用户对特定数据库 (mydb) 中所有表的所有权限。
  • 用户权限

    • root 用户可以对所有数据库进行操作,并且可以将权限授予其他用户。
    • other 用户只能操作 mydb 数据库中的对象,也可以将权限授予其他用户,但只能在 mydb 数据库中进行操作。
  • 访问控制

    • 两条语句中的用户都被限制为只能从 IP 地址 192.168.1.2 进行登录。

确保这些 GRANT 语句符合你的实际需求,并且在生产环境中使用时要注意安全性和权限管理。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

和烨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值