【入门】使用mysql客户端命令窗口:常用命令(二)

MYSQL创建用户

我们现在默认使用的都是root用户,超级管理员,拥有全部的权限。但是,一个公司里面的数据库服务器上面可能同时运行着很多个项目的数据库。所以,我们应该可以根据不同的项目建立不同的用户,分配不同的权限来管理和维护数据库。

创建用户

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

用户名:将创建的用户名
主机名:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%
密码:该用户的登录密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器

在这里插入图片描述例子:

‐‐ user1用户只能在localhost这个IP登录mysql服务器
CREATE USER 'user1'@'localhost' IDENTIFIED BY '1234';
‐‐ user2用户可以在任何电脑上登录mysql服务器
CREATE USER 'user2'@'%' IDENTIFIED BY '1234';

创建一个数据库

创建一个数据库(也可用自己之前创建好的),以便在给创建的用户进行授权。

CREATE DATABASES KKK;//创建一个名为“kkk”的数据库

在这里插入图片描述

授权

用户创建之后,没什么权限,需要给用户授权

GRANT 权限1, 权限2… ON 数据库名.表名 TO ‘用户名’@‘主机名’;

特别注意:

  1. GRANT授权关键字
  2. 授予用户的权限,如SELECT,INSERT,UPDATE等
  3. 如果要授权所有的权限则使用ALL谨慎授权
  4. 数据库名.表名:该用户可以操作哪个数据库的哪些表。如果要授予该用户对所有数据库和表的相应操作权限则可用*表示,如 *.*
  5. ‘用户名’@‘主机名’:给哪个用户授权
    在这里插入图片描述

例子:

  1. user1用户分配对test这个数据库操作的权限
GRANT CREATE,ALTER,DROP,INSERT,UPDATE,DELETE,SELECT ON test.* TO 'user1'@'localhost';
  1. user2用户分配对所有数据库操作的权限
GRANT ALL ON *.* TO 'user2'@'%';

撤销授权

REVOKE 权限1, 权限2… ON 数据库.表名 FROM ‘用户名’@‘主机名’;

例子:

撤销kfm用户对kkk数据库操作的权限

REVOKE ALL ON kkk.* FROM 'kfm'@'%';

在这里插入图片描述

查看权限

SHOW GRANTS FOR ‘用户名’@‘主机名’;

例子:

查看`kfm用户的权限

SHOW GRANTS FOR 'kfm'@'%';

在这里插入图片描述

删除用户

DROP USER ‘用户名’@‘主机名’;

例子:

DROP USER 'kfm'@'%';

在这里插入图片描述

查看表结构

– 查看表结构
DESCRIBE dept;
DESC dept;

DESCRIBE dept;
DESC dept;

在这里插入图片描述这里使用’DESCRIBE’或者’DESC’均可

练习:
创建一张user表, 可以存储以下内容:姓名,性别,年龄,生日,电话,家庭住址,邮箱

 CREATE TABLE `user`(
    `name` VARCHAR(20) COMMENT '姓名',
     `gender` CHAR(1) COMMENT '性别',
     `age` INT COMMENT '年龄',
     `birthday` DATE COMMENT '生日',
     `phone` VARCHAR(20) COMMENT '电话',
     `address` VARCHAR(50) COMMENT '住址',
     `email` VARCHAR(20) COMMENT '邮箱'
     );

在这里插入图片描述

创建和某表结构一样的表

--创建和user结构一样的表
CREATE TABLE d LIKE user;
-- 创建表
CREATE TABLE t AS select * from user;

在这里插入图片描述

删除表

DROP TABLE table_name;

这里的’‘table_name’'是你要删除的表名
在这里插入图片描述

添加列

--ALTER TABLE 表名 ADD 列名 数据类型;
ALTER TABLE t ADD id INT;

在这里插入图片描述

修改列属性

ALTER TABLE t MODIFY id VARCHAR(20);

在这里插入图片描述

修改列名

ALTER TABLE t CHANGE id  ss VARCHAR(20);

t 是表的名称,id 是原始列名,ss 是您想要将列名修改为的新名称,VARCHAR(20) 是新的列定义。
请注意,这个语句不仅仅修改了列名,还修改了列的数据类型和其他属性(例如长度)。在执行此操作之前,请确保了解变更的影响,并备份相关的数据。

在这里插入图片描述

删除列

ALTER TABLE t DROP ss;

在这里插入图片描述

重命名表

RENAME TABLE t TO a;

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值