开源数据库MySQL DBA运维实战
2021-04-21 11:08
1216 查看
开源数据库MySQL DBA运维实战
SQL
1、SQL语言分类
- SQL:Structured Query Language结构化查询语言)主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。
- DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
2、名词解释
- 数据库服务器:运行着数据库应用程序的设备=硬件+系统软件+MYSQL软件
- 数据库
- show databases; —显示数据库的各个库(如同房间的一个个格子)
- mysql: 授权库,主要存储系统用户的权限信息
- information_schema: 虚拟库,主要存储了系统中的一些数据库对象的信息,例如用户表信息、列信息、权限信息、字符信息等
- create database ku1;—创建个人库
- 表(EXCEL)的管理单元
- 表:记录的管理单元
- 字段(列)
- 记录(行):由一个个字段组成,信息的载体
- 类型:字符,数字,日期
- 图示
3、DDL
- DDL库
- 创建数据库:create database ku1;
- 查看所有数据库:show databases;
- 进入ku1:use ku1; 调用当前库:select database();
- 删除库:drop database ku1;
- 数据库在centos系统中的位置:/var/lib/mysql/ —数据库的实体,可进行备份
- 数据类型
- int:整数型
- float:浮点型
- 字符系列 char和varchar
- 枚举类型 enum:单选
- 集合类型 set:多选
- 时间和日期类型
- 年 year
- 日期 date
- 时间 time
- 日期和时间 datetime
- 约束类型
primary key:标识该字段为该表的主键,可以唯一的标识记录,不可以为空
创建
create table student.student4( id int not null, name varchar(50) not null, sex enum ('m','f') default 'm' not null, age int unsigned default 18 not null, hobby set('music','disc','dance','book') default 'book,dance' );
插入
foreign key:标识该字段为该表的外键,实现表与表(父表主键/子表1外键/子表2外键)之间的关联
创建
create table student6( id int primary key not null auto_increment, name varchar(50) not null, sex enum('male','female') not null default 'male', age int not null default 18 );
或
create table student7( -> id int auto_increment not null, -> name varchar(50) not null, -> sex enum('male','female') not null default 'male', -> age int not null default 18, -> primary key(id) -> );
插入
insert into student6 values (1,'alice','female',22);
insert into student6(name,sex,age) values ('jack','male',19), ('tom','male',23);
unique key:标识该字段的值是唯一的,可以为空,一个表中可以有多个UNIQUE
auto_increment:标识该字段的值自动增长(整数类型,而且为主键)
default:为该字段设置默认值
not null:必填
unsigned:无符号,正数
zerofill:使用0填充,例如0000001
- DDL-表
创建表
CREATE DATABASE school; use school; create table student1( id int, name varchar (20) , sex enum('m','f'), age int );
查看表名
show tables;
表中插入内容
insert into student1 values (1,'zhangsan','m',33) ;
insert into student1 (id,name,sex,age) values (1,'zhangsan','m',33) ;
查看表内容
select * from student1;
查看表结构
desc student1;
(20) , sex enum(‘m’,‘f’), age int );
查看表名
show tables;
表中插入内容
insert into student1 values (1,‘zhangsan’,‘m’,33) ;
insert into student1 (id,name,sex,age) values (1,‘zhangsan’,‘m’,33) ;
查看表内容
select * from student1;
查看表结构
desc student1;
相关文章推荐
- Mysql DBA 高级运维学习笔记-增删表字段更改表名删除表实战
- Mysql DBA 高级运维学习笔记-Mysql增量备份及分库分表备份数据恢复实战
- 小米开源数据库中间件Gaea实战(有彩蛋) - MySQL
- Mysql DBA 高级运维学习笔记-Mysql主从复制原理及实战部署
- 结合saltstack打造mysql dba数据库运维平台化salt-api接口
- Mysql DBA 高级运维学习笔记-MySQL备份与恢复实战案例及生产方案
- Mysql DBA 高级运维学习笔记-DML之修改表中的数据实战
- 【Docker】「实战篇」开源项目docker化运维部署-搭建mysql集群(四)
- MySQL DBA数据库高级工程师培训套餐(门徒)七大阶段+大量实战案例
- 揭秘Sharding-Proxy——面向DBA的数据库中间层 - 运维
- 从运维角度浅谈 MySQL 数据库优化
- 巨杉数据库 MySQL兼容项目正式开源
- MySQL主从数据库配置实战
- Mysql实现企业级数据库主从复制架构实战
- Mysql DBA 高级运维学习笔记-Heartbeat实现web服务的高可用案例及维护要点
- 运维学python之爬虫中级篇(九)Python3 MySQL 数据库连接
- 项目实战7—Mysql实现企业级数据库主从复制架构实战
- MySQL专用开源数据库存储引擎出炉
- Mysql DBA 高级运维学习笔记-DML语句之insert知识讲解
- 第54课作业实战成功:用phpMyAdmin等数据库可视化软件操作MySQL,并且通过远程操作MySQL;