-------------------------------------------------------------------------------------------------------------------------------------

mariadb(mysql)

mariadb(mysql)

编译安装--tar.gz安装--mariadb程序的组成--数据类型--修饰符--sql语句----索引


mariadb编译安装

mariadb特性
为data目录添加一个独立的存储
开机自动挂载
初始化data目录
修改配置文件
启动服务
mysql密码安全初始化

sql语句

获取创建库帮助
获取创建表帮助
获取当前数据库字符集
获取所有排序规则
获取当前数据库所支持的搜索引擎

查询库
查询表
(查询表)查询创建表时使用的命令
(查询表)查看表状态
查询表结构
查询表索引

DATABASE创建数据库
TABLE创建表
(TABLE创建表)PRIMARYKEY创建主键

(ALTER改变表字段)添加字段
(ALTER改变表字段)修改字段
(ALTER改变表字段)删除字段
(ALTER修改表索引)添加索引
(ALTER修改表索引)删除索引
(ALTER改变表索引)添加唯一键

描述表结构

[INSERT INTO插入数据](#INSERT INTO插入数据)
DELETE删除
SELECT查询
SELECT查询WHERE查询条件

UPDATE更新表中数据

用户账号及权限管理

基础概念
创建用户账号
账号密码连接数据库
删除用户
用户权限授权
查看指定用户获得的授权
回收用户权限
重读授权表

mariadb特性

编译安装


mariadb程序的组成


sql语句


数据类型

修饰符


UNSIGNED 无字符
AUTO_INCREMENT 自增长
PRIMARY KEY 主键
UNIQUE KEY 唯一键

索引

cnetos7安装



为data目录添加一个独立的存储





开机自动挂载


初始化data目录


修改配置文件


启动服务

mysql密码安全初始化

默认密码为空

使用mysql自带的工具,密码安全初始化

mysql密码连接

获取创建库帮助

获取创建数据库的帮助

获取创建表帮助

获取当前数据库字符集

获取当前数据库所支持的所有字符集

获取所有排序规则

获取所有排序规则

获取当前数据库所支持的搜索引擎

获取当前数据库所支持的搜索引擎

DATABASE创建数据库

CREATE 创建
DATABASE 数据库
IF NOT EXISTS 如果不存在就创建

TABLE创建表

use 切换库
CREATE 创建
TABLE 表
tbl1 表名
第一字段(id int NOT NULL)
字段名id,类型int 不能为空NOT NULL
第二字段(name VARCHAR(100) NOT NULL)
字段名name,类型VARCHAR不能超过100 不能为空NOT NULL
第三字段(age tinyint)
字段名age,类型tinyint

查询库

查询当前数据库中所有的库

查询表

查询当前库中所有的表

(查询表)查询创建表时使用的命令

(查询表)查看表状态

查询表状态,两种显示方式

查询表结构

field(字段名),type(类型),null(是否为空),key(是否为键),default(默认值)

查询表索引

(TABLE创建表)PRIMARYKEY创建主键

PRIMARY KEY 创建主键
UNSIGNED 无符号
NOT NULL 不能为空
两种方式创建主键,第一种为id为主键,第二种为id和名字联合为主键

(ALTER改变表字段)添加字段

ALTER 修改
TABLE 表
students 表名
ADD 添加字段
gender 字段(性别)
ENUM('m','f') 媒举类型,限定范围

(ALTER改变表字段)修改字段

ALTER 修改
TABLE 表
students 表名
CHANGE 修改
id 原来的字段
sid 需要修改的字段
int 类型 UNSIGNED 无字符 NOT NULL 不能为空

(ALTER改变表字段)删除字段

ALTER 修改
TABLE 表
students 表名
drop 删除
sid 不需要的字段

(ALTER修改表索引)添加索引

ALTER 修改
TABLE 表
students 表名
ADD 添加
INDEX(age) 索引(在那个字段上索引)

(ALTER修改表索引)删除索引


ALTER 修改
TABLE 表
students 表名

(ALTER改变表索引)添加唯一键

描述表结构

DESC 描述
students 表名

INSERT INTO插入数据

有两种方法
INSERT INTO 插入数据操作
students 在这个表中
VAlUES 插入数据

SELECT查询

SELECT 查询
* 所有字段
FROM 来自哪里
students 表名,来自这张表

SELECT 查询
* 所有字段
FROM 来自哪里
students 表名,来自这张表
WHERE 指明条件
id<3 条件时id小于3的

SELECT 查询
* 所有字段
FROM 来自哪里
students 表名,来自这张表
WHERE 指明条件
gender='m' 字段等于m的,字符需要引号,引起来

IS NULL 表示为空
IS NOT NULL 表示不空

SELECT 查询
* 所有字段
FROM 来自哪里
students 表名,来自这张表
ORDER BY 排序查询
name 字段
DESC 降序查询
LIMIT 指定显示多少列

LIMIT 指定显示多少列

SELECT查询WHERE查询条件

条件逻辑操作
LIKE模糊匹配
[as 别名](#as 别名)

条件逻辑操作

SELECT 查询
* 所有字段
FROM 来自哪里
students 表名,来自这张表
WHERE 指明条件
sid>=2 and sid<=4 条件时sid大于等于2并且sid小于等于4

BETWEEN ... AND ... 表示字段在两个值之间

LIKE模糊匹配

SELECT 查询
* 所有字段
FROM 来自哪里
students 表名,来自这张表
WHERE 指明条件
name 字段
LIKE 'Z%' 模糊匹配,Z开头的任意字符

RLIKE 'Z%' 正则表达式模糊匹配

as 别名

DELETE删除

如果没有条件,直接操作表,会清空表

UPDATE更新表中数据

基础概念


创建用户账号

CREATE 创建
USER 用户
% 百分号表示所有
IDENTIFIED BY 指定密码

账号密码连接数据库

mysql 关键字
-u 指明用户
-h 指明主机地址
-p 指指明密码
注意:如果用户没有授权,是看不到没有授权的表的

删除用户

直接指定用户就可以了

用户权限授权

有用户会修改权限,如果无用户会创建用户,并指定权限
GRANT 授权
SELECT,DELETE 只授权查询和删除这两个权限
ON 从哪里授权
testdb.* 表示testdb这个库下的*表示所有表
TO 哪个用户
'testuser'@'%' 表示testuser这个用户,从所有主机
IDENTIFIED BY 指定密码

没有创建表的授权,所以不能创建表

查看指定用户获得的授权

SHOW GRANTS FOR 显示用户授权
CURRENT_USER() 表示当前用户,这是函数所以有花括号

回收用户权限

REVOKE 表示回收
DELETE 删除权限
ON 从那个表
FROM 从哪个用户
也可以理解为,从这个用户的这张表上,回收删除命令,需要管理员操作,否则没权限

重读授权表

直接修改授权表,比如密码,需要重读授权表

posted @ 2019-11-10 18:52  给文明以岁月  阅读(231)  评论(0编辑  收藏  举报