MySQL创建帐号和权限设定

1 使用root权限登录MySQL服务器
mysql -u root -p;

2 创建用户名,用于项目管理或者普通人员,只能操作特定的数据库
CREATE USER '用户名'@'localhost' IDENTIFIED BY '密码';
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';

这将为远程客户端创建一个MySQL用户,并将其密码设置为给定的密码,有了新的MySQL用户后,可以为其授予数据库权限。
请注意,%:符号表示允许来自任何IP地址的远程连接。

3 设置数据库权限,只能操作特定数据库
GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'%';
4 删除用户
DROP USER '用户名'@'localhost';
DROP USER '用户名'@'%';
5. 修改用户名密码
alter user 用户@localhost identified by '密码';
alter user 用户@% identified by '密码';
5.上述所有修改之后记得使用 flush privileges命令刷新修改记录
flush privileges;
6. 修改密码认证方式
ALTER USER 用户@'%' IDENTIFIED WITH mysql_native_password BY '密码';

这个认证方式是方便用户以用户名密码的方式登录连接数据库
 

注:如果有特殊字符,要使用反勾号引起来。例

GRANT ALL PRIVILEGES ON   `ry-vue-mes`.*   TO 'abc'@'localhost';

在MySQL中使用了下划线的数据库名,今天在GRANT的时候,死活无法为用户赋予权限,一直报错。查看了官方的文档,文档中说:如果使用下划线的数据库在使用GRANT的时候,需要对数据库的下划线进行转义。官方文档的全文如下:The “_” and “%” wildcards are permitted when specifyingdatabase names in GRANT statements that grant privileges atthe global or database levels. This means, for example, thatif you want to use a “_” character as part of a database name,you should specify it as “\_” in the GRANT statement, toprevent the user from being able to access additionaldatabases matching the wildcard pattern; for example,GRANT ... ON `foo\_bar`.* TO ....GRANT语句用于在全局层级或数据库层级赋予权限。当在GRANT语句中指定数据库名称时,允许使用‘_’和‘%’通配符。这意味着,如果您想要使用‘_’字符作为一个数据库名称的一部分,您应该在GRANT语句中指定它为‘\_’,以防止用户可以访问其它符合此通配符格式的数据库;例如,GRANT ... ON `foo\_bar`.* TO ...。说明非常明确,就是在碰到下划线和百分号的时候,为了防止GRANT的时候权限漂移,需要明确的对这两个通配符进行转义,转义符为\,因此有了如下的语句:GRANT ALL ON 'db\_test'.* TO 'test_user';恩,看上去是如此的完美,但,非常遗憾的是,MySQL接受到这个语句直接报错:ERROR 1064 (42000): You have an error in your SQL syntax; check the manual thatcorresponds to your MySQL server version for the right syntax to use near ''db\_test'.* TO 'test_user'' at line 1经过多次测试,终于发现这个语法应该变成:GRANT ALL ON `db\_test`.* TO 'test_user';发现不同了吗?至少我当时没有发现,经过尝试才发现,转义的时候,不仅原有的通配符需要反斜杆[\]进行转义,就连包含转义字串的引号也要变成反勾号!反勾号是啥?就是标准键盘中主键盘数字键1前面的那个键(也就是ESC下面的那个键)。经过修正后的SQL语句非常顺利的执行了,类似的情况,在GRANT中需要注意的是TO后面的User,平时User字串是可以不用单引号的,但如果User字串中包含了中划线(-)的时候,或者含有通配符(%)的时候,则必须要有引号包含。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/2649.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nacos采坑:非集群Nacos不要使用同一个MySQL数据库

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 Nacos 致力于帮助您…

【Linux】使用Jenkins + svn + springboot自动构建jar包并自动打包在服务器上运行

👨‍🎓博主简介 🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 🐋 希望大家多多支…

面包屑新玩法,ReactRouter+Ant Design实现动态渲染

在Ant Design中,可以通过Breadcrumb组件结合react-router库实现动态生成面包屑导航。具体步骤如下: 定义路由配置数据结构 我们需要在路由配置中添加额外的面包屑相关信息,例如面包屑标题、icon等。例如: const routes [{path: /,breadcrumbName: 首页},{path: /users,brea…

remote: HTTP Basic: Access deniedfatal: Authentication failed for

$ git push -u origin main remote: HTTP Basic: Access denied fatal: Authentication failed for https://gitcode.com/edenl/GD32E350_hid_keyboard.git/ 使用访问令牌做为密码登录即可。

拼多多面试题——力扣版测试用例纠错

最近我看到力扣上这个题目,用了三种方法,结果没有一种正确,我就纳闷儿了,为何总有一个测试用例过不了,结果我发现这个测试用例确实有问题啊。。。。。 题目: 表:Logs ----------------------…

LeetCode_链表的回文结构

✨✨所属专栏:LeetCode刷题专栏✨✨ ✨✨作者主页:嶔某✨✨ 题目描述: 对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。给定一个链表的头指针A,请返回一个bo…

JS----前端不同格式的 UUID生成

前端 UUID生成 export const generateUUID () > {let timestamp new Date().getTime()let performanceNow (typeof performance ! undefined && performance.now && performance.now() * 1000) || 0return xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx.replac…

多端统一开发框架Taro、UniApp和WeApp这三个应用各自在前端开发领域有着独特的定位和功能

Taro、UniApp和WeApp这三个应用各自在前端开发领域有着独特的定位和功能,下面是对它们的详细介绍以及三者之间的对比,包括各自的优缺点和社区维护支持程度。 一、应用介绍 Taro Taro是一个多端统一开发框架,支持使用React语法编写一次代码…

关于页面尺寸变动,echarts或地图等自适应的一种方法(监听特定DOM元素尺寸变化)

1.问题 项目中,页面做了响应式布局.大量使用了弹性布局,导致盒子没有固定的宽高,在菜单切换或者窗口缩放时,echarts或者地图元素就会出现扭曲,错版,填充不完全,溢出等问题. 当通过监听window的resize事件时,难以精准捕捉目标容器,同时echarts的resize()方法并不一定达到效果 …

基于智能推荐的校园兼职招聘平台

3协同过滤算法简介 目前,推荐算法有很多种,可以应用于日常生活的许多领域,对大量数据进行处理和分析,然后进行分类。它将显示用户可能感兴趣的内容,这是推荐算法的主要功能之一[1]。 协同过滤算法通常包括两类&#…

详解数据结构:栈

一、顺序栈 顺序栈的存储方式如下: 从图中可以看出,顺序栈需要两个指针,base指向栈底,top指向栈顶。 typedef struct SqStack {ElemType *base; //栈底指针ElemType *top; //栈顶指针}SqStack; 说明: ElemType是元…

【智能算法】水循环算法(WCA)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献 1.背景 2012年,H Eskandar等人受到自然水循环过程启发,提出了水循环算法(Water Cycle Algorithm, WCA)。 2.算法原理 2.1算法思想 WCA模拟了大自然水循环过…

稳态视觉诱发电位 (SSVEP) 分类学习系列 (1) :FFT-CNN-CCA

稳态视觉诱发电位分类学习系列:FFT-CNN-CCA 0. 引言1. 主要贡献2. 提出的方法2.1 数据处理2.2 卷积神经网络的结构 3. 结果3.1 健康参与者结果比较3.2 卒中患者结果比较 4. 总结欢迎来稿 论文地址:https://ieeexplore.ieee.org/document/8708243 论文题目&#xff1…

日志分析简单总结

1、分析日志的目的 误报:不是攻击而上报成攻击 漏报:是攻击而没有防御的情况 日志分析可以判断是否误判或者漏判,可以溯源攻击行为 在护网作为防守方必备的技能(分析NGAF和态势感知,发现异常) 2、攻击出现…

探索比特币符文热:市场趋势与持续性分析

在加密货币世界中,比特币一直是备受关注的焦点之一。然而,近年来,随着DeFi(去中心化金融)的兴起,一种新的潮流开始崭露头角——比特币符文。本文将探讨比特币符文的兴起,分析市场趋势&#xff0…

iOS 17上如何恢复数据?iOS 17 数据恢复软件

“您好,我正在为我的 iPhone 寻找一款iOS 17 数据恢复软件。升级到 iOS 17 后,我丢失了 iPhone 上的所有照片、联系人和消息。有什么建议吗?” ——丹尼 iOS 17数据恢复软件下载 升级到iOS 17后如何恢复丢失的数据?由于在 iPhone…

聊聊 Linux iowait

哈喽大家好,我是咸鱼。 我们在使用 top 命令来查看 Linux 系统整体 CPU 使用情况的时候,往往看的是下面这一列: %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 68.0 wa, 0.0 hi, 0.0 si, 0.0 st其中,man 手册解释 wa 表示 …

异地组网、内部网络需求同时满足,贝锐企业路由器G300开箱体验

由于公司最近新增了办事处,作为IT管理员的我不仅需要搞定办事处的网络,还需要解决远程访问公司内部办公系统以及文件存储服务器的问题。 在此之前,只有少量人员出差时,我们采用了虚拟专网方案来进行远程访问。然而,新…

Pandas 2.2 中文官方教程和指南(五)

原文:pandas.pydata.org/docs/ 与 SAS 的比较 译文:pandas.pydata.org/docs/getting_started/comparison/comparison_with_sas.html 对于来自SAS的潜在用户,本页面旨在演示如何在 pandas 中执行不同的 SAS 操作。 如果您是 pandas 的新手&am…

深度学习基础之《TensorFlow框架(15)—神经网络》

一、神经网络基础 1、什么是神经网络 人工神经网络(Artificial Neural Network,简写为ANN)。也简称为神经网络(NN) 是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)结构和功…