MySQL8实用系列(一)MySQL简介及基本使用
���录
一、数据库基础
二、启动MySQL
三、使用MySQL
连接MySQL
查看数据库版本
查看当前mysql支持的存储引擎
查看系统变量及其值
显示所有数据库
进入指定的库
查看当前所在库
查看当前库中所有的表
查看创建表的DDL语句
查看表结构
四、权限相关操作
修改密码
授予/撤销权限
查看用户权限
五、语法规范
六、SQL语句分类
MySQL是一种DBMS(数据库管理系统),主要用于存储、检索、管理和处理数据。为什么MySQL在全世界范围内有如此广泛的应用?
- 成本——开源,免费使用、修改
- 安全可靠——加密、访问控制
- 高性能——作为关系型数据库执行很快
- 简单——容易学习和使用
- 可移植性——可工作在不同的系统平台
但是其并不总是支持其他DBMS的功能和特性,不过随着版本更新,这一点也得到不断地改善。这个系列主要介绍的是MySQL的开发过程中的实际使用。使用的是MySQL 8.0.32的版本。
一、数据库基础
数据存放在表中,表存放在数据库中。
一个库可以有多张表,每张表具有唯一名字作为标识。Navicat中可通过打开数据库后点击对象或者表查看库中的表。右边框选区域可查看数据库的字符集和排序规则。Oracle中数据库为schema(模式)。
数据表中有一或多列,列又被称为“字段”,相当于属性。每一列都有相应的数据类型,定义列可以存储的数据种类。Navicat中可通过右边信息栏查看表信息、建表语句以及各个字段的信息。
数据表中的每一行数据,相当于不同的个体对象,其每一个属性(列)都各不相同。
二、启动MySQL
两种方式,可参照我之前的文章Windows安装配置Mysql超详细教程_mysql 8.0.36文件配置-CSDN博客
三、使用MySQL
连接MySQL
Win+R调出运行窗口,输入cmd点击确定打开命令提示符。
mysql -h ip -P 端口 -u 用户名 -p
说明:本地连接可以省略部分参数,直接使用mysql -u用户名 -p,也可写成mysql -h 127.0.0.1 -P 3306 -uroot -p,-P需大写
以下基本命令可在命令提示符或Navicat中新建查询或DataGrip中新建Query Console使用。
查看数据库版本
mysql --version 或者mysql -V 用于在未登录情况下查看数据库版本
登录情况下查看数据库版本:
SELECT VERSION();
查看当前mysql支持的存储引擎
SHOW ENGINES;
查看系统变量及其值
SHOW VARIABLES;
查看某个系统变量:SHOW VARIABLES like '变量名';
显示所有数据库
SHOW DATABASES;
进入指定的库
USE `库名`;
查看当前所在库
SELECT DATABASE();
查看当前库中所有的表
SHOW TABLES;
查看其他库中所有的表:SHOW TABLES FROM `库名`;
查看创建表的DDL语句
SHOW CREATE TABLE `表名`;
查看表结构
DESC `表名`;
也可使用通过表列查看表结构
SHOW COLUMNS FROM `表名`;
四、权限相关操作
工作中,数据库管理员会根据需求创建并授予相关权限的数据库用户提供给你使用。所以查看创建删除用户、授权、撤销权限、修改密码等相关操作基本不会涉及。面试或者本地使用可能涉及:
修改密码
SET PASSWORD FOR '用户名'@'主机' = PASSWORD('密码');
授予/撤销权限
GRANT privileges ON `库名`.`表名` TO `用户名`[@'主机'] [WITH GRANT OPTION]; REVOKE privileges ON `库名`.`表名` TO `用户名`[@'主机'] [WITH GRANT OPTION];
说明:
- GRANT授予,REVOKE撤销
- 参数privileges(权限列表),ALL PRIVILEGES表示所有权限,也可以是SELECT、USAGE等权限,多个权限使用逗号分隔。
- ON指定权限针对的具体库和表,*表示所有
- TO将权限赋予指定用户,限制的主机为ip或域名
-
WITH GRANT OPTION为该用户可以将自己拥有的权限授权给别人
查看用户权限
SHOW GRANTS FOR `用户名`[@`主机`];
查看当前用户权限
SHOW GRANTS;
注:以上带主机的命令,主机都可省略,%表示任意的地方
五、语法规范
1.大小写不敏感,但建议语句关键字大写,表名、列名小写
2.每条命令使用英文分号结尾
3.注释:
单行注释:#注释,或-- 注释
多行注释:/* 注释 */
4.使用反引号``引用库名、表名、字段名,用于区分保留字与普通字符,避免用保留字命名
5.索引命名默认为`idx_字段名`
6.库名用缩写,尽量在2~7个字母
六、SQL语句分类
DQL(Data Query Language):数据查询语言SELECT相关语句
DML(Data Manipulate Language):数据操作语言INSERT、UPDATE、DELETE语句
DDL(Data Define Languge):数据定义语言CREATE、DROP、ALTER语句
TCL(Transaction Control Language):事务控制语言START TRANSACTION、SAVEPOINT、COMMIT、ROLLBACK
本文作为长期分享实用系列的第一篇,主要介绍了MySQL的启动连接和简单使用,简单的权限操作,以及语法规范和语句的分类。如有问题和建议,可私信或评论,非常感谢。