MySQL/MariaDB如何创建用户并限制指定才能IP访问?

登入数据

$ mysql --version
mysql Ver 15.1 Distrib 10.9.3-MariaDB,
for debian-linux-gnu (x86_64) using readline EditLine wrapper # 连接数据库(10.0.4.2)
$ mysql -u wang123net1a -h 10.0.4.2 -p

创建一个数据库:

CREATE DATABASE testdb;

CREATE DATABASE `testdb` DEFAULT COLLATE = `utf8mb4_general_ci`;

给网站程序创建一个用户

创建用户:

-- mysql 8.0  mysql_native_password
-- CREATE USER 'wang123net1a'@'%' IDENTIFIED WITH mysql_native_password BY 'Pwd@1234&';

创建一个名为 wang123net1a 的用户:

-- 指定 只有本机才能访问
CREATE USER 'wang123net1a'@'localhost' IDENTIFIED BY 'Pwd@123'; -- 指定 只有10.0.4.14 才能访问
CREATE USER 'wang123net1a'@'10.0.4.14' IDENTIFIED BY 'Pwd@123'; -- 如果不限制IP,则直接使用百分号 % (不安全)
CREATE USER 'wang123net1a'@'%' IDENTIFIED BY 'Pwd@123';

给创建的账号授予权限:

一般我们只赋予某个用户指定的权限(比如仅selelct/insert/update权限),而非去全部权限:

-- 给来自 localhost 的用户赋权
GRANT select,insert,update,delete,create,index,alter ON testdb.* TO 'wang123net1a'@'localhost'; -- 给来自 10.0.4.14 的用户赋权
GRANT select,insert,update,delete,create,index,alter ON testdb.* TO 'wang123net1a'@'10.0.4.14'; -- 赋予用户 数据库 testdb 的全部权限
GRANT all privileges on testdb.* TO wang123net1a@"%";

使用 show grants 可以查看用户的权限:

SHOW GRANTS FOR wang123net1a@'%';

SHOW GRANTS FOR wang123net1a@'localhost';

SHOW GRANTS FOR wang123net1a@'10.0.4.14';

删除用户的权限:

DROP USER 'wang123net1a'@'%';

DROP USER 'wang123net1a'@'localhost';

DROP USER 'wang123net1a'@'10.0.4.14';

刷新

使用 FLUSH privileges 刷新权限,让权限设置立即生效。

FLUSH privileges;

参考来源:https://wang123.net/a/1577249620193476608

MySQL/MariaDB如何创建用户并限制指定才能IP访问?的更多相关文章

  1. MySQL/MariaDB数据库的用户和权限管理

    MySQL/MariaDB数据库的用户和权限管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.元数据数据库(mysql) 系统授权表(均在mysql数据库中): db hos ...

  2. 只允许指定的ip访问本机的指定端口22:

    只允许指定的ip访问本机的指定端口22: 允许的的ip:192.168.1.123, 192.168.1.124, 192.168.1.100,其他ip都禁止访问. 切换到root用户 1.在tcp协 ...

  3. mysql创建用户、赋予指定权限命令

    1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码 ...

  4. Mysql ---部署,创建用户

    版本:mysql-5.7.18-win32 步骤: 1 准备my.ini文件放在bin同级目录 My.ini文件可以设置bsedir/datadir/port等等 2 初始化数据库(5.7版本需要初始 ...

  5. oracle 创建用户和imp指定表空间

    创建用户: 1,sqlplus sys/pwd as sysdba; 2, create user username identified by password; 3, grant dba,conn ...

  6. 连接mysql数据库,创建用户模型

    1.安装与配置python3.6+flask+mysql数据库 (1)下载安装MySQL数据库 (2)下载安装MySQL-python 中间件 (3)pip install flask-sqlalch ...

  7. 命令行下创建MySQL数据库与创建用户以及授权

    先以root用户登录mysql: C:\Users\XXX>mysql -u root -p 输入密码后登录,接下来操作如下: 1.创建数据库 语法:create schema [数据库名称] ...

  8. linux环境中通过useradd命令,创建用户的时候指定用户的base-dir

    需求说明: 今天一个同事,问了一个这样的问题,在linux环境中,创建用户的时候,默认的是在/home目录下创建一个与用户名相同的家目录, 如何能够将这个/home更换成一个其他的,比如/opt/ap ...

  9. mysql用命令创建用户创建数据库设置权限

     1.create database bbs; //创建数据库 2.create user bbs IDENTIFIED by 'bbs';  //创建用户bbs和登录密码bbs 3.grant AL ...

  10. Oracle 创建用户,赋予指定表名/视图只读权限

    步骤指南 创建用户 格式:; 语法:create user 用户名 identified by 密码; 注:密码不行的话,前后加(单引号):' create user TEST identified ...

随机推荐

  1. kafka详解(03) - kafka JAVA API

    kafka详解(03) - kafka JAVA API Producer (生产者)API 消息发送流程 Kafka的Producer发送消息采用的是异步发送的方式.在消息发送的过程中,涉及到了两个 ...

  2. python网络爬虫数据解析之正则

    本节内容,讲解爬取网络图片,利用正则匹配图片地址 请求网页之后,响应部分内容如下图: 1 时间:2023/1/7 10:42 2 功能描述 3 1.进行指定标签的定位 4 2.标签或者标签对应的属性中 ...

  3. python之路24之 面向对象动静态方法、继承、派生

    昨日内容回顾 人狗大战 1.直接使用字典表示人和狗 p1 = {} p2 = {} p3 = {} p4 = {} 2.封装产生人和狗的函数 def crreate_person():pass def ...

  4. 判断一个对象是否是数组的n个方法,typeOf不能判断引用类型对象

  5. echarts图例过多,折线过多颜色不知道怎么分配怎么办??优化如下

    优化一:很简单,echarts自身支持legend图例分页,加了分页就优化了图例过多情况. legend['type']: 'scroll', // 添加这一行代码即可实现图例分页功能 option ...

  6. Python3+Selenium3自动化测试-(六)

    这里来说一说selenium中的等待方式,其实在webdriver只有两种类型等待方式,显式等待和隐式等待,之前是在程序运行过程中使用time模块中的sleep进行代码的休眠进行强制等待,是显式等待中 ...

  7. 【分析笔记】Linux input 子系统原理分析

    一.input 子系统简介 输入子系统主要用于支持各种输入设备,可大大简化这类设备驱动的开发难度.以下为个人的理解,可能不同的内核版本会略有差异,在这里分析的内核为 linux-4.9. 无论在 Li ...

  8. 【转】查看iOS崩溃日志

    我们在进行iPhone应用测试时必然会在"隐私"中找到不少应用的崩溃日志,但是不会阅读对于很多人来说简直头疼.在此小编为大家详细介绍一下具体的阅读方法,希望大家可以更快的定位BUG ...

  9. Pytest插件pytest-assume多重断言

    Pytest插件pytest-assume多重断言 背景 import pytest def test_assume1(): assert 1 == 2 print('hello') assert 2 ...

  10. 基于遗传算法的地图四色原理绘图上色的Python代码

      本文介绍利用Python语言,实现基于遗传算法(GA)的地图四色原理着色操作. 1 任务需求   首先,我们来明确一下本文所需实现的需求.   现有一个由多个小图斑组成的矢量图层,如下图所示.   ...