MySQL (一)

一、历史

数据库技术:

  • 人工管理     数据不保存,没有文件的概念,数据面向应用
  • 文件系统     文件形式多样,程序直接有一定的独立性,数据长期保存在外存上,数据存取基                     本以记录为单位
  • 数据库系统   结构化的数据结构,较高的数据独立性、最低的冗余度、实现数据共享、数据一                       致性和可维护性(故障的发现和恢复、并发控制、安全性和完整性控制)

按照数据模型发展,数据库技术分为:  DB

  • 层次和网状数据库管理系统     
  • 关系数据库管理系统(RDBMS) 
  • 后关系数据库技术阶段

二、概述

  1. 数据库  (DB)                        是长期存储在计算机内、有组织、可共享的数据的集合。
  2. 数据库管理系统(DBMS)      位于用户和操作系统之间的一层数据管理软件,对数据库进                                                   行统一管理和控制,用户通过 DBMS 访问数据库中表内的数据
  3. 结构化查询语言 (SQL)        只关注结果,不关注过程

 数据库主要特点:

(1)实现数据共享            所有用户可同时存取数据库中的数据

(2)减少数据的冗余度      

(3)数据的独立性        逻辑结构和应用程序相互独立

(4)数据集中管理

(5)数据一致性和可维护性   (安全性控制、完整性控制、并发控制、故障的发现和恢复吧)

oracle  与 mysql 对比:

oracle 更适合跨国企业,对费用不敏感,对性能和安全要求高

mysql 体积小,速度快,总体拥有成本低、开源

三、安装

sudo apt-get install mysql-serber-8.0

Y

查看账号、密码并复制 、登录

mysql -u账号  -p密码

修改密码,退出命令行,重新登录 

启动数据库 

sudo service mysql start

关闭数据库

sudo service mysql stop

重启数据库

sudo service mysql restart

四、卸载

1、查看 mysql 依赖

dpkg --list|grep mysql

2.、卸载mysql

sudo apt-get remove mysql-common

sudo apt-get autoremove --purge mysql-server-8.0

3、清除残留数据

dpkg -l|grep ^rc|awk '{print$2}' |sudo xargs dpkg -P

4、再次查看mysql 剩余依赖项

dpkg --list|grep mysql

5、如果第四步还有数据,继续删除剩余依赖项

sudo apt-get autoremove --purge mysql-apt-config

五、对象

数据库对象    create 创建、alter 修改、delete  删除

表(存储数据的逻辑单元)、

数据字典(系统表,系统维护)、

约束(数据校验)、

视图(投影,映射,数据的逻辑显示)、

索引(提高查询性能)、

存储过程(用于完成一次完整的业务处理)、

存储函数(用于完成一次特定的计算)、

触发器(事件监听)

六、操作

      SQL 为了与关系型数据库通讯而使用的语言,几乎所有关系型数据库都支持  SQL ,但不同数据库之间存在一定的差异

第一代编程语言    机器语言   面向机器  二进制代码

第二代编程语言    汇编语言    指令

第三代编程语言    高级开发语言     C C++   java

第四代编程语言    只告诉计算机需要做什么

提高可能性,子句分行写,关键字不能简写,也不能换行

1、SQL 的分类

  • DDL   数据定义语言

        用来定义数据库对象:数据库、表、列等   

        关键字 :CREATE、ALTER、DROP、RENAME、TRUNCATE

  • DML   数据操作语言

        用来对数据库中表的数据进行增删改

        关键字:INSERT、  DELETE、 UPDATE

  • DQL   数据查询语言

        用来查询数据库中表的记录(数据)

        关键字:SELECT 、WHERE

  • DCL 数据控制语言

        用来定义数据库的访问权限和安全级别、以及创建用户

        关键字:GRANT(赋权)、 REVOKE(撤销权限)

2、标识符

字母、数字、下划线 @、#、¥

长度小于 128 位

字符串型和日期时间类型的数据可以使用单引号 '' 表示

列的别名,尽量使用 " " ,不建议省略 as 

3、注意事项

MySQL  在 Wincows 环境下是 大小写 不敏感的

MySQL  在Linux环境下 是大小写 敏感的

  • 数据库名、表名、表的别名、变量名是严格区分大小写的
  • 关键字、函数名、列名(字段名)、列的别名(字段的别名)是忽略大小写的

建议:

数据库名、表名、表的别名、字段名、字段的别名 等都小写

关键字、函数名、绑定变量等都大写

注释:

单行注释   #注释文字  

单行注释   --  注释文字  --  (-- 后面必须包含一个空格) 

多行注释   /* 注释文字 */  

4、操作命令

(1)显示所有数据库

show databases;

  (2)创建数据库

create database if not exists  db01;

(3)选择数据库

use db01;

(4)查看当前在哪个数据库下面

select database();

只有使用了 use ,进入了具体的数据库才能查询到内容

(5)显示数据库的创建过程

show create database db01\G;

(6)删除数据库

drop database db01;

(7)查看系统变量

show variables;

(8)查看以 auto 开头的所有变量

show variables like 'auto%';

(9)临时设置变量

set character_set_server=gbk;   只对当前开启的窗口生效

(10)显示系统状态,获得数据库运行信息

show status;

(11)显示哪个线程正在运行

show [full] processlist;

如果不使用 [full] ,那么只有头 100 字符被显示

(12)列出对一个用户必须发出以重复授权的授权命令

show grants for root@localhost ; 

(13)执行 sql 文件

source /home/master/briup_create.sql

source /home/master/briup_populate.sql

(14)查看表的构建语句

show create table briup.s_emp;       数据库名.表名

(15)查看表结构

describe s_emp;

desc s_emp;

(16)查看 s_emp 表中 以 ls 开头的列的信息

show columns from S_emp like 'la%';

(17)显示某个表的索引

show index from s_emp [from briup];

(18)查询数据库支持的引擎

show engines;

/// InnoDB (默认值)  支持事务、外键约束、灾难恢复、自动添加列属性  auto_increment

CSV (不支持索引)

 MEMDRY   (基于内存)

ARCHIVE     BLACKHOLE   MyISM

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值