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

一.SQL语言分类

  • SQL(Structured Query Language 即结构化查询语言)
    SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。
  • 分类
DDL(data definition language):DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
DML(data manipulation language):DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE
DQL(Data Query Language )数据查询语言 SELECTDQL语句 数据库查询语言: 查询数据SELECT
DCL(Data Control Language):DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE

二.名词解释

  • 数据库服务器
    运行着数据库应用程序的设备
    DELL R710+CENTOS+Mysql
    硬件+系统软件+MYSQL软件
  • 数据库(表(EXCEL)的管理单元)
    默认数据库:
    A.information_schema: 虚拟库,主要存储了系统中的一些数据库对象的信息,例如用户表信息、列信息、权限信息、字符信息等
    B.performance_schema: 主要存储数据库服务器的性能参数
    1.提供进程等待的详细信息,包括锁、互斥变量、文件信息;
    2.保存历史的事件汇总信息,为提供MySQL服务器性能做出详细的判断;
    3.对于新增和删除监控事件点都非常容易,并可以随意改变mysql服务器的监控周期
    C.mysql: 授权库,主要存储系统用户的权限信息
    D.sys: 主要存储数据库服务器的性能参数
    SYS database中,可以获取mem page、io 、latch/mutex/lock等各种性能数据,方便做peformance turning 和 troubleshooting。比如可以方便获取2个sql发生 lock block,用户占用的资源等信息。
    E.创建需要的业务主库…

  • 记录的管理单元
  • 记录(行)
    信息的载体,字段的管理单元
    张三,男,23,云计算工程师,月薪25K
  • 字段(列)
    姓名,文字,不能为空
    张三
  • 类型
    字符,数字,日期
  • 约束
    唯一,不能为空,自动增长
  • 图示
    在这里插入图片描述

三.DDL

1.DDL-库

1.1定义库

  • 创建业务数据库
#a.语法

create database 数据库名;
create database discuz;

#b.数据库名要求

区分大小写
唯一性
不能使用关键字如 create select
不能单独使用数字和特殊符号“如-"
正常的:用拼音或单词即可。
  • 查看所有数据库
mysql>show databases;

1.2选择/进入数据库

#USE 数据库名

mysql>SELECT database();   #调用函数,查询当前库

1.3删除数据库

DROP DATABASE 数据库名;

1.4系统中的位置

/var/lib/mysql   #数据库的实体,清理,备份

2.DDL-表

2.1创表目的

  • 表是数据库存储数据的基本单位
  • 表由若干个字段(列)组成
  • 主要用来存储数据记录(行)

2.2操作数据库实例1

#创建1列的表格-序号
#创库

mysql> create    database    haha;

#使用库

mysql> use    haha;

#创表1
#语法:创建  表格  表名t1  (列名id   类型int );

mysql> create  table    t1    (id int);

#查看所有表名

mysql> show tables;

#插入数据
#插入  到   表名t1   值  (1);

mysql> insert into t1 values (1);

#查询所有数据
#查询  所有列   从   表名t1

mysql> select * from t1;

#删除表

mysql> drop table t1;

2.3操作数据库实例2

#创建两列的表格-序号和姓名
#创建  表格  表名t2  (第一列名id   数字类型,  第二列名name   字符类型(长度))

mysql> create table t2 (id int, name varchar(20));

#查看表结构

mysql> show tables;   #查看表名
mysql> select * from t2;   #看表中的内容
mysql> desc  t2;   #查看表结构

#插入数据
#插入  到  表t2    值  (第一列信息,第二列信息);

mysql> insert into t2 values (1,'zhangsan');   #注意数字不能加引号,字符必须加引号(转义符)

#查询所有数据

mysql> select * from t2;

2.4操作数据库实例3

  • 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(字段值列表...);

mysql> insert into student1 values (1,'zhangsan','m',33) ,
mysql> insert into student1 values (2,'lisi','f',20) ,
mysql> 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、付费专栏及课程。

余额充值