mysql进阶-用户的创建_修改_删除

1. 使用mysql单次查询

[root@VM-4-6-centos /]# mysql -h localhost -P 3306 -p mytest -e "select * from book1";
Enter password: 
+----+-------------+--------------------+------+
| id | category_id | book_name          | num  |
+----+-------------+--------------------+------+
|  1 |           3 | 平凡的世界         |  450 |
|  2 |           1 | 刺杀小说家         |  660 |
|  3 |           2 | 鲁滨孙漂流记       |  330 |
|  4 |           4 | 活着               |  200 |
+----+-------------+--------------------+------+

过程: 连接mysql,查询,然后自动关闭

2. 查看mysql的用户

mysql中有一个默认存在的数据库mysql,该数据库下面user表中存储了系统用户数据
在这里插入图片描述
2.1 登入并使用mysql系统数据库

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| mytest             |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

2.2 查看用户数据

mysql> select * from user\G;

或者

mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
4 rows in set (0.01 sec)

3 创建系统用户

3.1 添加用户

mysql> CREATE USER 'zhang3' identified by '@ZhangSan123456';
Query OK, 0 rows affected (0.01 sec)

注意: 系统默认密码必须同时包含大写字母,小写字母,数字,特殊字符,如果不满足会报错。

mysql> CREATE USER 'zhang3' identified by 'zhangsan123456...';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

如果想设置简单一点的密码,需要修改密码等级,参考 修改密码等级

3.2 重新查看系统用户
%: 用户可以任何ip访问,可本地可远程
localhost: 用户只能本地连接访问

mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| %         | zhang3        |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
5 rows in set (0.00 sec)

3.3 添加一个只能本地连接的系统用户
两个名字为zhang3的用户,一个可以远程,一个只能本地。

mysql> CREATE USER 'zhang3'@'localhost' identified by '@ZhangSan123456';
mysql> SELECT host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| %         | zhang3        |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
| localhost | zhang3        |
+-----------+---------------+
6 rows in set (0.00 sec)

4.修改用户信息

4.1 本质就是修改user表中的数据,操作语法的sql的更新语法一致

mysql> update user set user= 'li4' where user = 'zhang3' and host = '%';
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql> SELECT host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | li4           |
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
| localhost | zhang3        |
+-----------+---------------+
6 rows in set (0.00 sec)

4.2 修改完刷新一下权限

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

否则会跟我一样,报了一个错还一脸懵逼

[root@VM-4-6-centos /]# mysql -u li4 -p@ZhangSan123456
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'li4'@'localhost' (using password: YES)
[root@VM-4-6-centos /]# mysql -uli4 -p@ZhangSan123456
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'li4'@'localhost' (using password: YES)

4.3 刷新完,重新登入

[root@VM-4-6-centos /]# mysql -u li4 -p@ZhangSan123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 348
Server version: 5.7.43 MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

mysql: [Warning] Using a password on the command line interface can be insecure.
意思是登入的时候把密码暴露在外面不安全

4.4 发现新增的用户没什么权限

mysql> use mysql;
ERROR 1044 (42000): Access denied for user 'li4'@'%' to database 'mysql'
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
+--------------------+
1 row in set (0.00 sec)

mysql> 

5.删除用户

5.1 默认删除 % ,不需要刷新

mysql> drop user 'li4';
Query OK, 0 rows affected (0.00 sec)

mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
| localhost | zhang3        |
+-----------+---------------+
5 rows in set (0.00 sec)

5.2 删除localhost的用户
drop user 'zhang3' @'localhost';

mysql> drop user 'zhang3' ;
ERROR 1396 (HY000): Operation DROP USER failed for 'zhang3'@'%'
mysql> drop user 'zhang3' @'localhost';
Query OK, 0 rows affected (0.01 sec)

mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
4 rows in set (0.00 sec)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第七章 图论

第七章 图论 一、数据结构定义 图的邻接矩阵存储法#define MaxVertexNum 100 // 节点数目的最大值// 无边权,只用0或1表示边是否存在 bool graph[MaxVertexNum][MaxVertexNum];// 有边权 int graph[MaxVertexNum][MaxVertexNum];图的邻接表存储法 把所有节点存储为…

Java版工程行业管理系统源码-专业的工程管理软件- 工程项目各模块及其功能点清单 em

 Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下: 首页 工作台:待办工作、消息通知、预警信息,点击可进入相应的列表 项目进度图表:选择(总体或单个&…

UNITY随记(八) SHADER实现立方体CUBE显示边框,描边

Shader "Vitens/CubeOutline"{Properties{_Color("Color", color) (1,1,1,1)_Width("Width", range(0,0.5)) 0.1}SubShader{Tags { "Queue""Transparent" }Pass {//如果要显示背面的线框,取消下面两个注释即可…

【etcd】docker 启动单点 etcd

etcd: v3.5.9 etcd-browser: rustyx/etcdv3-browser:latest 本文档主要描述用 docker 部署单点的 etcd, 用 etcd-browser 来查看注册到 etcd 的 key 默认配置启动 docker run -d --name ai-etcd --networkhost --restart always \-v $PWD/etcd.conf.yml:/opt/bitn…

Redis系列二:Clion+MAC+Redis环境搭建

1. ClionMACRedis-3.0-annotated环境搭建 参考: https://github.com/huangz1990/redis-3.0-annotated https://gitee.com/dumpcao/redis-3.0-annotated-cmake-in-clion https://tool.4xseo.com/a/12910.html 1.1 下载并导入Clion git clone https://gitee.com/dum…

LabVIEW开发多材料摩擦电测量控制系统

LabVIEW开发多材料摩擦电测量控制系统 摩擦电效应是两个物体摩擦在一起,电荷从一个物体转移到另一个物体的现象,从而导致两个物体携带相等和相反的电荷。接触和充电是主导该过程的两个关键因素。当静电荷累积到一定水平时,可能会出现放电现象…

Netty自定义消息协议的实现逻辑处理粘包拆包、心跳机制

Netty 自定义消息协议的实现逻辑自定义编码器 心跳机制实现客户端发送心跳包 自定义消息协议的实现逻辑 消息协议:这一次消息需要包含两个部分,即消息长度和消息内容本身。 自定义消息编码器︰消息编码器将客户端发送的消息转换成遵守消息协议的消息&…

关于latch up的重读

衬底电流容易导致寄生三极管导通(衬底电阻衬底电流》衬底压差),更容易触发latchup; 一般常用的实际产品中会用衬底隔离的器件来做负压器件;用DNW&NBL组成一个隔离盆将整个负压区和正常电路分开,DNW&NBL接高电压&#xff1…

抄写Linux源码(Day7:读闪客文章第二回 “自己给自己挪个地儿”)

闪客文章地址:https://mp.weixin.qq.com/s?__bizMzk0MjE3NDE0Ng&mid2247499274&idx1&sn23885b5b1344a1425f5a971d06ad2e7d&chksmc2c584a7f5b20db1b0a75ea896e7218a9f8bcd006e68f53693bab240b13f9e2fb0ec0c9b9a6a&cur_album_id2123743679373688…

iMX6ULL驱动开发 | 让imx6ull开发板支持usb接口FC游戏手柄

手边有一闲置的linux开发板iMX6ULL一直在吃灰,不用来搞点事情,总觉得对不住它。业余打发时间就玩起来吧,总比刷某音强。从某多多上8块儿大洋买来一个usb接口的游戏手柄,让开发板支持以下它,后续就可以接着在上面玩童年…

BUU [网鼎杯 2020 朱雀组]phpweb

BUU [网鼎杯 2020 朱雀组]phpweb 众生皆懒狗。打开题目,只有一个报错,不知何从下手。 翻译一下报错,data()函数:,还是没有头绪,中国有句古话说的好“遇事不决抓个包” 抓个包果然有东西,仔细一看这不就分别是函数和参…

软件外包开发的JAVA开发框架

Java的开发框架有很多,以下是一些常见的Java开发框架及其特点,每个框架都有其特定的使用场景和优势,开发者可以根据项目的需求选择合适的框架。今天和大家介绍常见的框架及特点,希望对大家有所帮助。北京木奇移动技术有限公司&…

【Golang 接口自动化01】使用标准库net/http发送Get请求

目录 发送Get请求 响应信息 拓展 资料获取方法 发送Get请求 使用Golang发送get请求很容易,我们还是使用http://httpbin.org作为服务端来进行演示。 package mainimport ("bytes""fmt""log""net/http""net/url&qu…

echarts图表基本使用

折线图 import * as echarts from echarts;const chartDom document.getElementById(main); const myChart echarts.init(chartDom); const option {xAxis: {type: category,data: [Mon, Tue, Wed, Thu, Fri, Sat, Sun]},yAxis: {type: value},series: [{data: [820, 932, …

【HarmonyOS】键盘遮挡输入框时,实现输入框显示在键盘上方

【关键字】 harmonyOS、键盘遮挡input,键盘高度监听 【写在前面】 在使用API6、API7开发HarmonyOS应用时,常出现页面中需要输入input,但是若input位置在页面下方,在input获取焦点的时候,会出现软键盘挡住input情况&a…

【JAVA】String ,StringBuffer 和 StringBuilder 三者有何联系?

个人主页:【😊个人主页】 系列专栏:【❤️初识JAVA】 文章目录 前言StringBufferStringBuffer方法 StringBuilderStringBuilder方法 String ,StringBuffer 和 StringBuilder的区别String和StringBuffer互相转换 前言 在之前的文章…

解密Redis:应对面试中的缓存相关问题

文章目录 1. 缓存穿透问题及解决方案2. 缓存击穿问题及解决方案3. 缓存雪崩问题及解决方案4. Redis的数据持久化5. Redis的过期删除策略和数据淘汰策略6. Redis分布式锁和主从同步7. Redis集群方案8. Redis的数据一致性保障和高可用性方案 导语: 在面试过程中&#…

mysql 锁

1. 概述 锁 是计算机协调多个进程或线程 并发访问某一资源 的机制。在程序开发中会存在多线程同步的问题,当多个线程并发访问某个数据的时候,尤其是针对一些敏感数据(比如订单,金额等),我们就需要保证这个数…

【redis】创建集群

这里介绍的是创建redis集群的方式,一种是通过create-cluster配置文件创建部署在一个物理机上的伪集群,一种是先在不同物理机启动单体redis,然后通过命令行使这些redis加入集群的方式。 一,通过配置文件创建伪集群 进入redis源码…

R语言【Tidyverse、Tidymodel】的机器学习方法

机器学习已经成为继理论、实验和数值计算之后的科研“第四范式”,是发现新规律,总结和分析实验结果的利器。机器学习涉及的理论和方法繁多,编程相当复杂,一直是阻碍机器学习大范围应用的主要困难之一,由此诞生了Python…