首页 > 数据库技术 > 详细

MariaDB基础

时间:2015-12-15 06:31:11      阅读:324      评论:0      收藏:0      [点我收藏+]

设计范式:

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))

技术分享

查看表上的索引

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;

技术分享

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

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

show table status

技术分享

SHOW TABLE STATUS [{FROM | IN} db_name]

[LIKE ‘pattern‘ | WHERE expr]

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

_:匹配任意单个字符

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

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

show table status like ‘student’ \G

最后不加大写G不会出来

技术分享

表选项:

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空间索引

技术分享

删除索引,help drop index

DROP INDEX index_name ON tbl_name

查看索引

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

技术分享

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] ... ]

技术分享

DELETE FROM tbl_name

[WHERE where_condition]

[ORDER BY ...]

[LIMIT row_count]

技术分享

SELECT

DISTINCT

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

select_expr [, select_expr ...]

[FROM table_references

[WHERE where_condition]

[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…可以等于 >= … <=

技术分享

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

技术分享

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

技术分享

组合条件 AND OR NOT

distinct,用来去重

技术分享

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

[ASC | DESC], ...]

技术分享

UPDATE [LOW_PRIORITY] [IGNORE] table_reference

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

[WHERE where_condition]

[ORDER BY ...]

[LIMIT row_count]

技术分享

用户及权限管理90:00

用户账号 username@host

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

CREATE USER ‘username’@‘hostname’

创建用户,设置密码

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

技术分享

删除用户

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

技术分享

用户授权:

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

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

ALL [PRIVILEDGE]

技术分享

查看用户已获得的授权

技术分享

收回授权:REVOKE

REVOKE 权限 on dbname.tablename from user@host

技术分享

MariaDB基础

原文:http://korekara.blog.51cto.com/8206017/1723038

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!