Mysql数据库表管理和用户管理与授权

这篇具有很好参考价值的文章主要介绍了Mysql数据库表管理和用户管理与授权。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、表结构管理

1. 修改表名

 ALTER TABLE 旧表名 RENAME 新表名

Mysql数据库表管理和用户管理与授权

 2.扩展表结构(增加字段)

 ALTER TABLE 表名 ADD 字段名 数据类型;

Mysql数据库表管理和用户管理与授权

 3.修改字段名,添加唯一健 change

 ALTER TABLE 表名 CHANGE 旧字段名 新字段名 [数据类型] [约束];

Mysql数据库表管理和用户管理与授权

4.删除字段drop

 ALTER TABLE 表名 DROP 字段名;

Mysql数据库表管理和用户管理与授权

 5.复制表结构

1)方式一:创建新表,导入数据

 create table 新表名 like 旧表名;             #通过LIKE方法,复制旧表的结构生成新表
 
 insert into 新表名 select * from 旧表名;     #再将旧表数据导入新表

Mysql数据库表管理和用户管理与授权

 2)复制表(直接复制表不能保证原有的表结构)

 create table 新表名 (select * from 旧表名);

Mysql数据库表管理和用户管理与授权

 6.临时表创建

CREATE TEMPORARY TABLE 表名(字段1 数据类型,字段2 数据类型[, ...] [, PRIMARY KEY (主键名)]);

 创建方式与创建表完全一致,最大的区别是,临时表只在当前的数据库连接生效,当数据库连接断开或重新连接终端时,该临时表均失效,无法查看。

7.清除表的两种方式比较

方式一:delete清空  

 delete from 表名;

方式二:truncate清空

 truncate table 表名;    

两者区别:(1)delete清空属于按照行清空,一行一行进行,效率低,速度慢(对于表数据较多的情况) truncate相当于删除表数据,保留表结构,重新创建一个与原表结构相同的表 

(2)当数据表中有自增型约束字段时,delete清除表数据后,在插入数据时,自增字段的数值会接着被删除表数据的最后一个自增数,计数。(eg:被删除表数据最后一行id(自增),为10,再创建时,该id从11开始)。truncate清空后,自增型字段会从1开始计数
 

二、登录用户管理

1.查看用户密码信息

用户信息存放在 mysql 数据库下的 user 表(MySQL 服务下存在一个系统自带的 mysql 数据库)。

use mysql ;
show tables;

Mysql数据库表管理和用户管理与授权

Mysql数据库表管理和用户管理与授权

 经常使用的查看密码信息的命令:

能看到密码信息:是经过加密后的密码信息

select user,host,authentication_string from user;

Mysql数据库表管理和用户管理与授权

 2.登录用户增加

明文密码创建用户格式:

create user  '用户名'@'主机' identified by  '密码'

Mysql数据库表管理和用户管理与授权

Mysql数据库表管理和用户管理与授权

加密密码创建用户 :

 SELECT PASSWORD('密码');    #先获取加密的密码
 ​
 CREATE USER 'lisi'@'localhost' IDENTIFIED BY PASSWORD '加密的密码';

Mysql数据库表管理和用户管理与授权

 3.登录用户用户名更改

 RENAME USER '旧的用户名'@'旧的主机地址' TO '新的用户名'@'新的主机地址';

Mysql数据库表管理和用户管理与授权

4.删除登录用户

drop user '用户名'@'登录地址';

Mysql数据库表管理和用户管理与授权

 5.查看当前登录用户

select user();

Mysql数据库表管理和用户管理与授权

6.修改用户密码

普通用户只有修改自身密码的权限

明文密码修改:

set password = password  ('新密码');

root用户是超级管理员,它不仅可以修改自身密码,还能修改其他用户的密码。

set password for  '用户'@'登录地址' =password ('密码');

Mysql数据库表管理和用户管理与授权

 7.root密码的忘记后的修改找回方法

 该操作必须是在数据库本机且为root用户,才可进行

1)第一步:添加跳过的初始配置

vim  /etc/my.cnf
 
skip-grant-tables

Mysql数据库表管理和用户管理与授权

2) 第二步:重启数据库服务 ,修改数据库用户表中root密码

systemctl restart mysql.service
mysql
mysql> UPDATE mysql.user SET AUTHENTICATION_STRING = PASSWORD('123123') where user='root';
 mysql> flush privileges;   #刷新数据库
 ​
 mysql> quit                #退出

Mysql数据库表管理和用户管理与授权

 3)第三步:登录测试新密码 

mysql -u root -p123123

Mysql数据库表管理和用户管理与授权

4)第四步:撤销添加的免密码认证设置,重启数据库服务 

#删除配置文件中的配置,之后重启服务。
 注意:最后再把/etc/my.conf 配置文件里的skip-grant-tables 删除,并重启mysql服务。
 vim /etc/my.cnf
systemctl restart mysqld.service 

Mysql数据库表管理和用户管理与授权

 三、管理用户登录权限

常见的用户权限

权限    权限说明    权限级别
CREATE     创建数据库、表或索引的权限     数据库、表或索引
DROP    删除数据库或表的权限     数据库或表
GRANT OPTION       赋予权限选项  数据库或表
REFERENCES    引用权限     数据库或表
ALTER     更改表的权限    数据表
DELETE      删除表数据的权限   数据表
INDEX      操作索引的权限    数据表
INSERT     添加表数据的权限    数据表
SELECT    查询表数据的权限    数据表
UPDATE    更新表数据的权限    数据表
CREATE VIEW       创建视图的权限  视图
SHOW VIEW       查看视图的权限  视图
ALTER ROUTINE     更改存储过程的权限    存储过程
CREATE ROUTINE    创建存储过程的权限     存储过程
EXECUTE     执行存储过程权限    存储过程
FILE      服务器主机文件的访问权限   文件管理
CREATE TEMPORARY TABLES       创建临时表的权限  服务器管理
LOCK TABLES    锁表的权限    服务器管理
CREATE USER      创建用户的权限  服务器管理
RELOAD        执行 flush privileges, refresh, reload 等刷新命令的权限 服务器管理
PROCESS        查看进程的权限  服务器管理
REPLICATION CLIENT       查看主从服务器状态的权限   服务器管理
REPLICATION SLAVE       主从复制的权限  服务器管理
SHOW DATABASES     查看数据库的权限    服务器管理
SHOW DATABASES     查看数据库的权限    服务器管理
SUPER     超级权限     服务器管理
ALL [PRIVILEGES]     所有权限
USAGE        没有任何权限   

1.查看用户已有的权限

 SHOW GRANTS;     #查看当前用户(自己)的权限
 ​

Mysql数据库表管理和用户管理与授权

 SHOW GRANTS FOR 用户名@来源地址;    #查看其他用户的权限

Mysql数据库表管理和用户管理与授权

 2.授权操作

1) 对存在用户进行授权

GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'来源地址' [IDENTIFIED BY '密码'];

权限列表:  用于列出授权使用的各种数据库操作,以逗号进行分隔如"select, insert,update"。 使用"all"表示所有权限(实际上部分权限仍无法使用,只包括大部分权限),可授权执行任何操作。

 ​  数据库名.表名:  用于指定授权操作的数据库和表的名称,其中可以使用通配符*。 例如,使用"mysql.*" 表示授权操作的对象为mysql数据库中的所有表。  ​  '用户名'@'来源地址':  用于指定用户名称和允许访问的客户机地址,即谁能连接、能从哪里连接。 来源地址可以是域名、IP地址,还可以使用“%”通配符,表示某个区域或网段内的所有地址。

 IDENTIFIED BY:  用于设置用户连接数据库时所使用的密码字符串。在新建用户时,若省略"IDENTIFIED BY"部分,则用户的密码将为空。
Mysql数据库表管理和用户管理与授权

 2)对不存在的用户进行创建并授权 

 GRANT ALL PRIVILEGES ON *.* TO  '用户名'@'来源地址' IDENTIFIED BY '密码';

Mysql数据库表管理和用户管理与授权

 3.撤销用户权限

 revoke 权限列表/ALL on 库名.表名 from '用户名'@'来源地址';

Mysql数据库表管理和用户管理与授权

四、总结

1.用户管理操作

 create user 'username'@'address' identified by 'password';   #创建用户  ​

 select user,host,authentication_string from mysql.user;   #查看用户信息  ​

 rename user old_user to new_user;        #修改用户名  ​

 drop user '用户名'@'来源地址';            #删除用户  ​  

set password = password('XXXX');         #修改当前登录用户的密码  ​

 set password for '用户名'@'来源地址' = password('XXXX');     #修改其他用户的密码  ​

 select user ();      #查看当前登录用户和来源地址  ​

 ###忘记root用户密码的解决方法:  

修改mysql配置文件/etc/my.cnf,在 [mysqld] 配置项下加入 skip-grant-tables

service mysqld restart   #重启服务

 mysql   #免密登陆  

 update mysql.user set authentication_string=password('新密码') where user='root';  

#修改密码 flush privileges; #刷新数据库

2.用户授权操作 

grant 权限列表/ALL ON 库名.表名 to 'username'@'address' identified by '密码';  ​   #授予用户权限  

show grants;     #查看当前用户(自己)的权限                

show grants for 'username'@'address';      #查看其他用户的权限  ​

 revoke 权限列表/ALL on 库名.表名 from 'username'@'address';   #撤销用户的权限  ​  

mysql -u 用户名 -p[密码] -h 目标IP/主机名 -P 端口号             #远程连接mysql
 文章来源地址https://www.toymoban.com/news/detail-488266.html

到了这里,关于Mysql数据库表管理和用户管理与授权的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • MySQL数据库——MySQL GRANT:用户授权

    授权就是为某个用户赋予某些权限。例如,可以为新建的用户赋予查询所有数据库和表的权限。MySQL 提供了 GRANT 语句来为用户设置权限。 在 MySQL 中,拥有 GRANT 权限的用户才可以执行  GRANT  语句,其语法格式如下: 其中: priv_type 参数表示权限类型; columns_list 参数表示权

    2024年02月06日
    浏览(5)
  • MySQL数据库配置及创建用户和授权

    MySQL数据库配置及创建用户和授权

    注意: 都是基于MySQL8.0以上版本 需要注意的是,修改 MySQL 的配置参数时需要谨慎,如果参数配置不合理,可能会导致数据库性能下降或出现其他问题。修改 MySQL 的配置参数时,最好具有一定的经验或者了解相关的 MySQL 参数调优知识。 vi /etc/my.cnf 第一步: cd /etc #进入etc目录

    2024年02月15日
    浏览(7)
  • 修改Mysql数据库的用户名和密码【详细】

    修改Mysql数据库的用户名和密码【详细】

    数据库的用户名默认是root 1进入到Mysql         首先要登录数据库         1win+r输入cmd【 管理员身份打开 】或者  2搜索输入命令提示符。 2 输入 mysql -uroot -p 点击回车         注意:mysql 默认用户名是root ,我以前修改过,所以我输入了 mysql -uerp -p 回车 , 然后输

    2024年02月05日
    浏览(9)
  • 达梦数据库8用户管理以及忘记sysdba密码修改办法

    达梦数据库8用户管理以及忘记sysdba密码修改办法

    达梦数据库8用户管理 1.创建用户的语法: 创建自定义用户gin,设置密码为123456789,密码要符合密码策略(PWD_POLICY)要求,指定默认表空间为MAIN 2.锁定/解锁用户 3.修改用户的密码(同样要符合密码策略PWD_POLICY) 4.修改用户默认表空间 –尝试从MAIN表空间修改到TEST 先创建TEST的表

    2024年02月12日
    浏览(78)
  • MySQL数据库用户管理

    MySQL数据库用户管理

    primary key主键约束:字段的值不能重复,不能为null,一个表只能有一个主键 unique key唯一性约束:字段的值不能重复,能为null,一个表可有多个唯一键 not null非空约束:字段的值不能为null default默认值约束: 字段的值如果没有设置则使用默认值自动填充 auto_increment自增约束:

    2024年02月08日
    浏览(8)
  • postgresql|数据库|角色(用户)管理工作---授权和去权以及usage和select两种权限的区别

    postgresql|数据库|角色(用户)管理工作---授权和去权以及usage和select两种权限的区别

    postgresql做为一个比较复杂的关系型的重型数据库,不管是安装部署,还是后期的运行维护,都还是有比较多的细节问题需要引起关注。 例如,用户权限的合理分配,那么,什么是权限的合理分配呢? 自然是权限的最小化原则,也就是说每个用户能够完成其权限范围内的工作

    2024年02月13日
    浏览(6)
  • MySQL:事务、索引、用户管理、备份、数据库设计(三大范式)

    MySQL:事务、索引、用户管理、备份、数据库设计(三大范式)

    事务 (transaction):要么都成功,要么都失败。 核心 :将一组 SQL 放在一个批次中去执行。 原则 ACID :原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability)。 原子性 :一个事务中的所有步骤 要么都 成功, 要么都 失败,不能只成功一个步骤。 一致性 :包括

    2023年04月26日
    浏览(9)
  • MySQL数据库——SQL(4)-DCL(管理用户、权限控制)

    MySQL数据库——SQL(4)-DCL(管理用户、权限控制)

    目录 管理用户 1.查询用户 2.创建用户 3.修改用户密码 4.删除用户 示例 权限控制 1.查询权限 2.授予权限 3.撤销权限 示例 DCL总结 DCL DCL英文全称是Data Control Language(数据控制语言),用来管理数据库用户、控制数据库的访问权限。 注意: 主机名可以使用通配符‘%’。 这类S

    2024年02月12日
    浏览(20)
  • 【Mysql数据库从0到1】-入门基础篇--用户与权限管理

    【Mysql数据库从0到1】-入门基础篇--用户与权限管理

    Mysql 用户分为root用户和普通用户,其中root用户是数据库超级管理员,拥有所有权限(创建、删除、修改密码、授权等管理权限),普通用户只拥有被授予的权限。 Mysql数据库的安全性通过账户管理来保障。 1.1 🍃 Mysql服务器登录 🍀 简单使用 🍀 复杂使用 1.2 🍃 用户创建

    2024年02月07日
    浏览(7)
  • MySql数据库的初步安装与数据表结构数据管理

    MySql数据库的初步安装与数据表结构数据管理

    目录 一、数据库的相关了解 1)数据库的概念  数据(Data) 表 数据库系统 2)数据库系统发展史 第一代数据库 第二代数据库 第三代数据库 当今主流数据库介绍 2)数据库的分类  关系数据库 非关系型数据库 非关系型数据库的优点 二、mysql的yum安装与源码编译安装   1)源

    2024年02月08日
    浏览(1021)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包