权限管理

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 用户权限分为非常多种,包括全局权限、库权限、表权限、列权限等。

权限管理

用户权限分为非常多种,包括全局权限、库权限、表权限、列权限等。

-- 赋予权限(GRANT)
mysql> GRANT SELECT,INSERT ON *.*             -- 赋予用户选择插入权限(所有库的所有表)
    -> TO 'boy'@'localhost'                   -- 不存在将新建用户
    -> IDENTIFIED BY '123456'                 
    -> WITH GRANT OPTION;                     -- (可选)允许用户转授权限
-- 撤消权限(REVOKE)
mysql> REVOKE INSERT ON *.*
    -> FROM 'boy'@'localhost';
-- 查看权限
mysql> SELECT Host,User,Select_priv,Grant_priv
    -> FROM mysql.user
    -> WHERE User='testUser';Copy to clipboardErrorCopied
复制代码

数据库管理

MySQL 内划分为多个互相独立的数据存储区域,调用数据库指令时必须提前声明要使用的数据库。

  • 数据库选项信息
属性 含义 备注
CHARACTER SET 编码方式 默认为 utf8mb4
COLLATE 校对规则 默认为 utf8mb4_general_ci
-- 查看所有数据库
mysql> SHOW DATABASES;
-- 进入/切换数据库
mysql> USE mydb;
-- 查看当前数据库
mysql> SELECT DATABASE();
-- 创建数据库
mysql> CREATE DATABASE [IF NOT EXISTS] mydb;
mysql> CREATE DATABASE [IF NOT EXISTS] mydb CHARACTER SET utf8mb4;
-- 删除数据库
mysql> DROP DATABASE [IF EXISTS] mydb;
-- 查看数据库选项信息
mysql> SHOW CREATE DATABASE mydb;
-- 修改数据库选项信息
mysql> ALTER DATABASE mydb CHARACTER SET utf8;Copy to clipboardErrorCopied
复制代码

表管理

  • 表属性
属性 含义 备注
CHARSET 字符集 默认使用数据库字符集
ENGINE 存储引擎 默认为 InnoDB
DATA DIRECTORY 数据文件目录
INDEX DIRECTORY 索引文件目录
COMMENT 表注释

如果表标记为 TEMPORARY 则为临时表,在连接断开时表会消失。

  • 列属性
属性 含义 备注
PRIMARY KEY 主键 标识记录的字段。可以为字段组合,不能为空且不能重复。
INDEX 普通索引 可以为字段组合,建立普通索引。
UNIQUE 唯一索引 可以为字段组合,不能重复,建立唯一索引。
NOT NULL 非空 (推荐)不允许字段值为空。
DEFAULT 默认值 设置当前字段的默认值。
AUTO_INCREMENt 自动增长 字段无需赋值,从指定值(默认 1)开始自动增长。表内只能存在一个且必须为索引。
COMMENT 注释 字段备注信息。
FOREIGN KEY 外键 该字段关联到其他表的主键。默认建立普通索引。

表操作

-- 查看所有表
mysql> SHOW TABLES;
-- 创建表
mysql> CREATE [TEMPORARY] TABLE [IF NOT EXISTS] student
       (
           id INT(8) PRIMARY KEY AUTO_INCREMENT=20190001,
           name VARCHAR(50) NOT NULL,
           sex INT COMMENT 'Male 1,Female 0',
           access_time DATE DEFAULT GETDATE(),
           major_id INT FOREIGN KEY REFERENCES major(id) 
       )ENGINE=InnoDB;
mysql> CREATE TABLE grade
       (
           student_id INT,
           course_id INT,
           grade INT,
           PRIMARY KEY (student_id,course_id),
           CONSTRAINT fk_grade_student FOREIGN KEY (student_id) REFERENCES student(id),
           CONSTRAINT fk_grade_course FOREIGN KEY (course_id) REFERENCES course(id)
       );
-- 删除表
mysql> DROP TABLE [IF EXISTS] student;
-- 清空表数据(直接删除表,再重新创建)
mysql> TRUNCATE [TABLE] student;
-- 查看表结构
mysql> SHOW CREATE TABLE student;
mysql> DESC student;
-- 修改表属性
mysql> ALTER TABLE student ENGINE=MYISAM;
-- 重命名表
mysql> RENAME TABLE student TO new_student;
mysql> RENAME TABLE student TO mydb.new_student;      
-- 复制表
mysql> CREATE TABLE new_student LIKE student;                  -- 复制表结构
mysql> CREATE TABLE new_student [AS] SELECT * FROM student;    -- 复制表结构和数据
-- 检查表是否有错误
mysql> CHECK TABLE tbl_name [, tbl_name] ... [option] ...
-- 优化表
mysql> OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
-- 修复表
mysql> REPAIR [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ... [QUICK] [EXTENDED] [USE_FRM]
-- 分析表
mysql> ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...Copy to clipboardErrorCopied
复制代码

列操作

-- 添加字段
mysql> ALTER TABLE student ADD [COLUMN] age INT;               -- 默认添加在最后一行
mysql> ALTER TABLE student ADD [COLUMN] age INT AFTER sex;     -- 添加在指定字段后
mysql> ALTER TABLE student ADD [COLUMN] age INT FIRST;         -- 添加在第一行
--修改字段
mysql> ALTER TABLE student MODIFY [COLUMN] id SMALLINT;        -- 修改字段属性
mysql> ALTER TABLE student CHANGE [COLUMN] id new_id INT;      -- 修改字段名
-- 删除字段
mysql> ALTER TABLE student DROP [COLUMN] age;   
-- 编辑主键
mysql> ALTER TABLE student ADD PRIMARY KEY(id,age);           
mysql> ALTER TABLE student DROP PRIMARY KEY;                 
-- 编辑外键
mysql> ALTER TABLE student ADD CONSTRAINT fk_student_class FOREIGN KEY(cid) REFERENCES class(id);
mysql> ALTER TABLE student DROP FOREIGN KEY fk_student_class;



相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
3
分享
相关文章
kde
|
12天前
|
Docker镜像加速指南:手把手教你配置国内镜像源
配置国内镜像源可大幅提升 Docker 拉取速度,解决访问 Docker Hub 缓慢问题。本文详解 Linux、Docker Desktop 配置方法,并提供测速对比与常见问题解答,附最新可用镜像源列表,助力高效开发部署。
kde
8086 49
|
9天前
typora免费版,激活方法,Typora使用教程
Typora是一款简洁高效的Markdown编辑器,支持即时渲染。本教程涵盖安装方法、文件操作、视图控制、格式排版、字体样式及Markdown语法,助你快速上手使用Typora进行高效写作。
2123 4
Dify MCP 保姆级教程来了!
大语言模型,例如 DeepSeek,如果不能联网、不能操作外部工具,只能是聊天机器人。除了聊天没什么可做的。
2019 29
国内如何安装和使用 Claude Code镜像教程 - Windows 用户篇
国内如何安装和使用 Claude Code镜像教程 - Windows 用户篇
1118 5
【保姆级图文详解】大模型、Spring AI编程调用大模型
【保姆级图文详解】大模型、Spring AI编程调用大模型
781 10
【保姆级图文详解】大模型、Spring AI编程调用大模型
Windows安装Claude Code
Claude Code 是 Anthropic 推出的代码助手,支持在 Windows 通过 WSL(Windows Subsystem for Linux)运行。本文介绍如何在 Windows 系统中启用 WSL、安装 Ubuntu 子系统、配置 Python 与 Node.js 环境,并最终安装和运行 Claude Code。内容涵盖 WSL 设置、开发工具安装、依赖配置及常见问题解决方法,助你顺利在本地环境中使用 Claude Code 提升编码效率。
414 0
Windows安装Claude Code
从混乱到有序:2025年10+拯救多项目管理的专业工具指南
本文全面解析智能组合管理的技术架构与算法创新,涵盖数据感知、优化计算到决策应用的全链条。介绍动态贝叶斯网络优化框架及多项目协同资源调度模型,并结合工具,展示智能工具在研发与项目管理中的前沿应用,助力组织实现高效协同与持续优化。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问