TiDB笔记

随手记录

1、HTAP

HTAP(Hybrid Transaction and Analytical Processing,混合事务和分析处理)就是能够将在线事务处理(On-Line Transactional Processing,简称OLTP) 和在线数据分析 (On-Line Analytical Processing,简称OLAP) 请求在同一个数据库系统中完成。

2、TIDB

TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 5.7 协议和 MySQL 生态等重要特性。目标是为用户提供一站式 OLTP (Online Transactional Processing)、==OLAP ==(Online Analytical Processing)、HTAP 解决方案。TiDB 适合高可用、强一致要求较高、数据规模较大等各种应用场景。

3、SQL基本操作

3.1、分类

DDL (Data Definition Language):数据定义语言,用来定义数据库对象,包括库、表、视图和索引等。
DML (Data Manipulation Language):数据操作语言,用来操作和业务相关的记录。
DQL (Data Query Language):数据查询语言,用来查询经过条件筛选的记录。
DCL (Data Control Language):数据控制语言,用来定义访问权限和安全级别。
------常用的 DDL 功能是对象(如表、索引等)的创建、属性修改和删除,对应的命令分别是 CREATE、ALTER 和 DROP。

3.2、DDL操作

3.2.1数据库操作(查看、创建、删除)

1、使用SHOW DATABASES查看系统中有哪些数据库列表

SHOW DATABASES;

2、使用名为mysql的数据库

USE mysql;

3、使用SHOW TALBLES语句查看数据库中有哪些表

SHOW TABLES FROM mysql;

4、使用CREATE DATABASE 创建一个名为samp_db数据库

CREATE DATABASES IF NOT EXISTS samp_db;

5、使用DROP DATABASE语句删除数据库

DROP DATABASES samp_db;
3.2.2数据库表操作(创建 查看 删除)

1、使用CREATE TABLE创建一个数据库表

CREATE TABLE table_name column data_type constraint;

2、要创建一个名为 person 的表,包括编号、名字、生日等字段,可使用以下语句:

CREATE TABLE person(
	id INT(11),
	name VARCHAR(255),
	birthday DATE
);

3、查看创建的表 SHOW CREAE TABLE

SHOW CREATE TABLE person;

4、删除表使用DROP TABLE

DROP TABLE person;
3.2.3索引的操作(创建、查找、删除)

常用的 DML 功能是对表记录的新增、修改和删除,对应的命令分别是 INSERT、UPDATE 和 DELETE。
索引通常用于加速索引列上的查询。对于值不唯一的列,可使用 CREATE INDEX 或 ALTER TABLE 语句创建普通索引。例如:
1、创建索引使用 CREATE INDEX 或者 ALTER TABLE

CREATE INDEX person_id ON person(id);

ALTER TABLE

ALTER TABLE person ADD INDEX person_id(id);

2、对于值唯一的列,可以创建唯一索引。

CREATE UNIQUE INDEX person_unique_id ON person(id);

或者

ALTER TABLE person ADD UNIQUE person_unique_id(id);

3、使用SHOW INDEX 查看表内中的所有索引

SHOW INDEX FROM person;

4、使用 ALTER TABLE 或 DROP INDEX 语句来删除索引。与 CREATE INDEX 语句类似,DROP INDEX 也可以嵌入 ALTER TABLE 语句。

DROP INDEX person_id ON person;

或者

ALTER TABLE person DROP INDEX person_unique_id;
3.2.4数据库记录操作(增删改操作)

1、使用INSERT语句,向表内插入全部记录

INSERT INTO person VALUES(1,'tom','20170902');

2、使用INSERT 向表中插入部分数据

INSERT INTO person(id ,name) values(1,'tom');

3、使用 DELETE 语句向表内删除部分表记录。例如:

DELETE FROM person WHERE id = 2;

4、使用UPDATE语句,修改表内记录的部分字段。

UPDATE person SET birthday where id = 2;
3.2.5 数据查询(DQL)

DQL 数据查询语言是从一个表或多个表中检索出想要的数据行,通常是业务开发的核心内容。
1、使用 SELECT 语句检索表内数据。例如:

SELECT * FROM person;

2、查询指定的记录

SELECT name FROM person;

3、使用 WHERE 子句,对所有记录进行是否符合条件的筛选后再返回。例如:

SELECT * FROM person WHERE id<5 ;
3.2.5 创建、授权、删除用户(DCL)

常用的 == DCL 功能==是创建或删除用户,和对用户权限的管理。
1、使用 CREATE USER 语句创建一个用户 tiuser,密码为 123456:

CREATE USER 'tiuser'@'localhost' IDENTIFIED BY '123456';

2、授权用户 tiuser 可检索数据库 samp_db 内的表:

GRANT SELECT ON samp_db.* TO 'tiuser'@'localhost';

3、查询用户 tiuser 的权限:

SHOW GRANTS FOR tiuser@localhost;

4、删除用户tiuser:

DROP USER 'tiuser'@'localhost';
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐