首页 > 数据库 >mysql限定IP访问

mysql限定IP访问

时间:2024-01-30 15:12:13浏览次数:26  
标签:username 限定 IP CREATE IDENTIFIED USER mysql password

 一、修改配置文件

1. 编辑MySQL的配置文件my.cnf(或者my.ini),该文件通常位于MySQL的安装目录下。

2. 找到[mysqld]部分,添加或修改以下行以启用访问控制:

bind-address = 0.0.0.0

这将使MySQL监听所有IP地址。

3. 找到[mysqld]部分之后,在配置文件中添加以下行来限制允许访问的IP地址:

skip-networking

这将禁止任何主机连接到MySQL。

 二、绑定、删除、修改IP

4.限制IP

例:
CREATE USER 'root'@'192.168.1.15' IDENTIFIED BY 'root'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.15';

CREATE USER 'username'@'IP_address1' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP_address1';
CREATE USER 'username'@'IP_address2' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP_address2';
CREATE USER 'username'@'IP_address3' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP_address3';
CREATE USER 'username'@'IP_address4' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP_address4';
CREATE USER 'username'@'IP_address5' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP_address5';
CREATE USER 'username'@'IP_address6' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP_address6';

将`username`替换为要创建的用户名,

将`IP_address1`、`IP_address2`、`IP_address3`、`IP_address4`、`IP_address5`和`IP_address6`替换为允许访问的六个IP地址,

将`password`替换为用户的密码。

刷新

flush privileges;

5.修改IP

use mysql;

UPDATE user SET host='newhost' WHERE user='yourusername';

5.删除IP

DROP USER 'username'@'hostname';

在这里,`username` 是你要删除的用户的用户名,`hostname` 是你想要删除的关联主机名。

注意:

这个命令将会从 MySQL 中删除指定的用户。如果你只是想删除用户与某个主机的关联,但保留用户本身,你需要重新创建用户,
且不包含要删除的主机名。例如,如果你想保留用户 user1,但删除与主机 host1 的关联,你可以执行以下操作:

DROP USER 'user1'@'host1';
CREATE USER 'user1'@'host2' IDENTIFIED BY 'password';

例:
DROP USER 'root'@'192.168.1.15';
CREATE USER 'root'@'192.168.1.15' IDENTIFIED BY 'root';

6. 查看允许访问数据库的IP地址:

在MySQL服务器上执行以下SQL语句

SELECT DISTINCT Host FROM mysql.user;

此查询将返回mysql.user表中已定义的唯一主机(IP地址)列表。

7. 如果需要查询特定用户允许访问的IP地址,请使用以下命令:

SELECT Host FROM mysql.user WHERE User = 'root';

8.修改密码

use mysql;            #命令连接权限数据库。
update mysql.user set authentication_string=password('新密码') where user='用户名' and Host ='localhost';   #设置新密码。
flush privileges;     #命令刷新权限。

 

标签:username,限定,IP,CREATE,IDENTIFIED,USER,mysql,password
From: https://www.cnblogs.com/elfin/p/17489134.html

相关文章

  • MySQL-8.0.30升级MySQL-8.0.34
    记录一次MySQL漏洞升级操作升级背景:OracleMySQL官方发布MySQL-8.0.30版本高危漏洞CVE-2022-32221、CVE-2022-37434等,受影响版本涉及到8.0.32,官方建议升级至8.0.33,最好使用8.0.34,这里我们将MySQL-8.0.30升级至MySQL-8.0.34版本方案:将原mysql目录重命名,解压新的程序目录软链接到......
  • 配置Gzip压缩,含前后端步骤
    启言在使用vite进行项目打包时,默认已经帮我们做了一些优化工作,比如代码的压缩,分包等等。除此之外,我们还有一些可选的优化策略,比如使用CDN,开启Gzip压缩等。本文会介绍在vite中使用插件来开启Gzip压缩。如果你用的是其他脚手架,可以自行前往搜索,这里只基于vite进行介绍......
  • MySQL建索引报错:BLOB/TEXT column used in key specification without a key length
    MySQL建索引报错:BLOB/TEXTcolumnusedinkeyspecificationwithoutakeylength因为text类型的字段值太长,没办法为全部内容建立索引,只能指定前多少位字符建立索引;就像这样createindex`索引名`on表名(字段名(600));所以能用varchar能放下的尽量使用varchar吧......
  • 在 Windows 平台下安装与配置 MySQL 5.7.36
    Windows一般使用两种MySQL安装方式,即MySQL二进制分发版(.msi安装文件)和免安装版(.zip压缩文件)。一般来讲,应当使用二进制分发版,因为该版本比其他的分发版使用起来要简单,不再需要其他工具来启动就可以运行MySQL。本次实验是在Windows10平台上选用图形化的二进制安装方式,其他W......
  • python操作mysql
    python操作mysql1.数据库连接池在操作数据库时需要使用数据库连接池。pip3.9installpymysql#安装pymysqlpip3.9installdbutils#安装dbutilsimportthreadingimportpymysqlfromdbutils.pooled_dbimportPooledDBMYSQL_DB_POOL=PooledDB(creator=pym......
  • 洛谷题单指南-排序-P1068 [NOIP2009 普及组] 分数线划定
    原题链接:https://www.luogu.com.cn/problem/P1068题意解读:根据题意,用模拟法,求出分数线所在位置,然后计算分数线,最后输出结果即可。解题思路:1、分数线是按从大到小排名来设定,因此数据因为按照分数从大到小排序,如果分数相同,需要安装报名号从小到大排序2、计算分数线位置,主要是下......
  • iTunes Connect 中修改后的内购(IPA)审核所需的时间
    引言在iOS开发过程中,将应用上传到AppStore是一个重要的步骤。应用审核和IAP商品审核是分开的,审核一般需要等待一周左右。如果审核通过,我们会收到Apple发来的反馈邮件,根据邮件中的指示进行后续操作。如果已经上架的应用需要添加IAP商品或者修改IAP价格等,直接提交IAP......
  • P3957 [NOIP2017 普及组] 跳房子
    50分代码1//P3957[NOIP2017普及组]跳房子2#include<iostream>3#include<queue>4#include<cstring>5#include<cmath>6usingnamespacestd;7typedeflonglongll;8intn,d,k;9inta[500010][2];10llf[500010],sum=0;11boo......
  • [转]JavaScript 判断是否为数字的几种方式
    原文地址:JavaScript判断是否为数字的几种方式_js判断是否是数字-CSDN博客前言1.typeof、instanceof、Number.isInteger2.parseInt、parseFloat3.isNaN、isFinite4.Number.isNaN、Number.isFinite5.正则表达式6.终极方案(推荐)7.结语前言js判断是否为数字的......
  • [转]JavaScript 的if()语句和==的判断
    原文地址:JavaScript的if语句和==的判断-系佛-博客园一.if(xx)的判断JavaScript遇到预期为布尔值的地方(比如if语句的条件部分),就会将非布尔值的参数自动转换为布尔值。系统内部会自动调用Boolean函数。1.当if括号里面的表达式为Boolean时,直接判断if(true){conso......