开源数据库MySQL DBA运维实战-SQL1

SQL(Structured Query Language 即结构化查询语言)
分类
DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
DDL(data definition language)
DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE
DML(data manipulation language)
DQL语句 数据库查询语言: 查询数据SELECT
DQL(Data Query Language )数据查询语言 SELECT
DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE
DCL(Data Control Language)
名词解释
数据库服务器:
运行着数据库应用程序的设备
CENTOS+Mysql
硬件+系统软件+MYSQL软件
默认数据库
mysql>show databases ;
information_schema: 虚拟库,主要存储了系统中的一些数据库对象的信息,例如用户表信息、列信息、权限信息、字符信息等
performance_schema: 主要存储数据库服务器的性能参数
1.提供进程等待的详细信息,包括锁、互斥变量、文件信息;
2.保存历史的事件汇总信息,为提供MySQL服务器性能做出详细的判断;
3.对于新增和删除监控事件点都非常容易,并可以随意改变mysql服务器的监控周期
mysql: 授权库,主要存储系统用户的权限信息
sys: 主要存储数据库服务器的性能参数
SYS database中,可以获取mem page、io 、latch/mutex/lock等各种性能数据,方便做peformance turning 和 troubleshooting。比如可以方便获取2个sql发生 lock block,用户占用的资源等信息。
创建需要的业务主库
表: 记录的管理单元
记录
信息的载体,字段的管理单元
张三,男,23,云计算工程师,月薪25K
字段:字段名,字段类型(长度),字段约束组成(可选)
姓名,文字,不能为空
类型:字符,数字,日期
约束: 不能为空,自动增长
DDL-库:
定义库
创建业务数据库
语法
CREATE DATABASE 数据库名;
CREATE DATABASE discuz;
数据库名要求:

  1. 区分大小写
  2. 唯一性
  3. 不能使用关键字如 create select
  4. 不能单独使用数字和特殊符号“如-"
  5. 正常的:用拼音或单词即可。
    查看所有数据库: SHOW DATABASES;
    选择/进入数据库
    USE 数据库名
    SELECT database();
    调用函数,查询当前库
    删除数据库
    DROP DATABASE 数据库名;
    系统中的位置: /var/lib/mysql/
    数据库的实体: 清理、备份
    数据类型
    1.数值类型
    整数类型 int
    浮点数类型 float
    小数
    2.字符串类型
    字符系列 CHAR和VARCHAR
    枚举类型 ENUM
    单选
    集合类型 SET
    多选
    3.时间和日期类型
    年 YEAR
    日期 DATE
    时间 TIME
    日期和时间 DATETIME:
    年 YEAR
    日期 DATE
    时间 TIME
    日期和时间 DATETIME
    操作数据库实例:
    1.创建表
    要求
    创建库school
    创建表student1
    结构

语法
create table 表名(字段名1 类型,字段名2 类型,字段名3 类型 );
示例
mysql> CREATE DATABASE school;
创建数据库school
mysql> use school;
使用库
mysql> create table student1( id int, name varchar (20) , sex enum(‘m’,‘f’), age int );
创建一个表,四列
提示
Query OK, 0 rows affected (0.03 sec)
2.查看表名
mysql> show tables;
±-----------------+
| Tables_in_school |
±-----------------+
| student1 |
±-----------------+
1 row in set (0.00 sec)
查看表名(需要进入一个数据库)
3.表中插入内容
语法
insert into 表名 values(字段值列表…);
插入数据
insert into student1 values (1,‘zhangsan’,‘m’,33) ,
insert into student1 values (2,‘lisi’,‘f’,20) ,
insert into student1 values (1,‘wangwu’,‘m’,40) ,
4.查看表内容
mysql> select * from student1;
查询表中所有字段的值
5.查看表结构
desc student1;
注意:表结构和表内容是两个概念!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值