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. 看不懂打我系列------图文并茂基于CentOS Linux release 7.8.2003 Core安装并Docker化你的Node.js应用

    @图文并茂基于CentOS Linux release 7.8.2003 Core安装并Docker化你的Node.js应用 简体中文 | English 说明 本文介绍如何在CentOS Linux ...

  2. C#零基础小白快速入门

    前言 本文写给想学C#的朋友,目的是以尽快的速度入门 C#好学吗? 对于这个问题,我以前的回答是:好学!但仔细想想,不是这么回事,对于新手来说,C#没有那么好学. 反而学Java还要容易一些,学Jav ...

  3. FLASH-CH32F103替换STM32F103 FLASH快速编程移植说明

    因CH32F103 相对于STM32F103 flash 操作多了快速编程模式,该文档说明主要目的是为了方便客户在原先ST 工程的基础上实现flash 快速编程模式的快速移植. 1.在stm32f10 ...

  4. Node.js学习笔记----day05(MongonDB详情)

    认真学习,认真记录,每天都要有进步呀!!! 加油叭!!! 一.es6中的find() 方法的原理 EcmaScript 6 对数组新增了很多方法 比如,find find 接收一个方法作为参数,方法内 ...

  5. CoppeliaSim(原V-REP)教育版不给下载的解决方法

    CoppeliaSim(原V-REP)教育版不给下载的解决方法 首先进入CoppeliaSim官网 网址:https://www.coppeliarobotics.com/downloads http ...

  6. Redis01 Redis详细介绍

    参考:https://blog.csdn.net/u011863024/article/details/107476187 学习视频 redis官网 redis中文网 JAVA源码 1 sql的发展 ...

  7. ROS自定义数据类型

    1.简介 自定义数据包可以在使用数据的功能包内进行创建,也可以单独创建一个功能包来专门进行自定义数据类型. 1.步骤: 1.创建一个功能包 进入工作空间catkin_ws/src catkin_cre ...

  8. 文盘Rust -- 本地库引发的依赖冲突

    作者:京东科技 贾世闻 问题描述 clickhouse 的原生 rust 客户端目前比较好的有两个clickhouse-rs 和 clickhouse.rs .clickhouse-rs 是 tcp ...

  9. 滴水 10/13号完成 打印出DOS PE头 节表 开源

    #include<stdio.h> #include<Windows.h> int szie2; #pragma warning(disable : 4996) LPVOID ...

  10. python 中常用可视化工具库

    python 中常用可视化工具库 a.Numpy常用属性及方法 为什么用它:它可以方便的使用数组,矩阵进行计算,包含线性代数.傅里叶变换.随机数生成等大量函数(处理数值型的数组) import num ...