天天看点

MariaDB基础

设计范式:

1、 字段是原子性,不可再分割

2、 应该有主键

3、 2个表不应该有相同的非主键字段

MariaDB的安装

1、 源码编译

2、 通用2禁止格式

3、 rpm包

视图

物理视图 系统管理员

逻辑视图 DBA

视图模型 终端用户

SQL接口

1、 DDL

a) CREATE DATABASE,TABLE

b) ALTER DATABASE

c) DROP DATABASE,TABLE

2、 DML

DDL:

MariaDB基础

表管理:

创建表时候可以创建索引

CREATE TABLE (create_defination)

col_name col_defination| PRIMARY KEY (colname)

可以创建在单个字段上交 单键 column_name

创建在多个字段上的键角 组合键

create table teachers(tid INT UNSIGNED ZEROFILL NOT NULL AUTO_INCREMENT PRIMARY KEY,tName VARCHAR(50) NOT NULL,AGE TINYINT UNSIGNED,Gender ENUM('F','M') Default 'M',dazhao VARCHAR(100),UNIQUE KEY(tName,dazhao))

MariaDB基础

查看表上的索引

SHOW {INDEX | INDEXES | KEYS}

{FROM | IN} tbl_name

[{FROM | IN} db_name]

[WHERE expr]

alter table

alter table student modify girlID TINYINT UNSIGNED NOT NULL after GENDER;

想改字段名,用change,只改字段定义,用modify

drop删除字段

mysql的重要特性,插件式存储引擎

show engines;

MariaDB基础

如果不指定就使用默认的存储引擎

存储引擎又叫做表类型,创建表的时候可以指定表类型。建议同一个库内用一个存储引擎

show table status

MariaDB基础

SHOW TABLE STATUS [{FROM | IN} db_name]

[LIKE 'pattern' | WHERE expr]

like用于模糊匹配,支持通配符

_:匹配任意单个字符

%:匹配任意长度任意字符

查看一个表是用什么存储引擎:

show table status like ‘student’ \G

最后不加大写G不会出来

MariaDB基础

表选项:

ENGINE = engine_name

步骤:

1、 show databases查看有什么数据库

2、 use database数据库名

3、 show tables 查看有哪些表

4、 desc table 看看表里啥结构

索引管理

索引,创建删除查看,不能修改

创建索引,help create index

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name ON tbl_name

SPATIAL空间索引

MariaDB基础

删除索引,help drop index

DROP INDEX index_name ON tbl_name

查看索引

SHOW {INDEX | INDEXES | KEYS} {FROM | IN} tbl_name

MariaDB基础

DML

INSERT, DELETE, SELECT, UPDATE

操作表中数据的。

INSERT [INTO] tbl_name [(col_name,...)]

{VALUES | VALUE} ({expr | DEFAULT},...),(...),...

[ ON DUPLICATE KEY UPDATE

col_name=expr

[, col_name=expr] ... ]

MariaDB基础

DELETE FROM tbl_name

[WHERE where_condition]

[ORDER BY ...]

[LIMIT row_count]

MariaDB基础

SELECT

DISTINCT

[SQL_CACHE | SQL_NO_CACHE] //SQL_CACHE放在查询缓存中

select_expr [, select_expr ...]

[FROM table_references

[GROUP BY {col_name | expr | position}

[ASC | DESC], ... [WITH ROLLUP]]

[HAVING where_condition]

[ORDER BY {col_name | expr | position}

[ASC | DESC], ...]

[LIMIT {[offset,] row_count | row_count OFFSET offset}]

where后的条件表达式:

>,<,>=,<=,==,!=

between … and…可以等于 >= … <=

MariaDB基础

模糊查询,LIKE %代替任意个单位

MariaDB基础

RLIKE ‘pattern’正则表达式匹配。

MariaDB基础

组合条件 AND OR NOT

distinct,用来去重

MariaDB基础

[ORDER BY {col_name | expr | position}排序

MariaDB基础

UPDATE [LOW_PRIORITY] [IGNORE] table_reference

SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ...

MariaDB基础

用户及权限管理90:00

用户账号 username@host

host可使用IP,网罗地址,通配符(_%);

CREATE USER ‘username’@‘hostname’

创建用户,设置密码

CREATE USER ‘soars’@’192.168.%.% identified by ‘123’’

MariaDB基础

删除用户

DROP USER ‘soars’@’192.168.%.%’

MariaDB基础

用户授权:

GRANT priv1, on dbname.table to ‘user’@’host’[Identified by password

如果用户不存在,就创建此账号并授权。

ALL [PRIVILEDGE]

MariaDB基础

查看用户已获得的授权

MariaDB基础

收回授权:REVOKE

REVOKE 权限 on dbname.tablename from user@host

上一篇: 安装MariaDB
下一篇: mariadb日志

继续阅读