一、mysql定义
**mysql是数据库服务的客户端,mysqld是数据库服务的服务器端。****mysql的本质就是基于CS模式下的一种网络服务****。数据库一般指的是在磁盘中或内存中存储的特定结构组织的数据,将来就是在磁盘上存储的一套数据库方案。**
** 创建数据库,本质就是在linux下创建一个目录。建表就是创建文件。这个工作实际上是mysqld服务帮我们做的。****数据库本质其实也是文件,只不过这些文件并不由程序员直接操作,而是由数据库服务帮我们进行操作**。
**这里也介绍一下存储引擎。****存储引擎是数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。 MySQL的核心就是插件式存储引擎,支持多种存储引擎。**
二、服务器,数据库,表关系
**所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库, 一般开发人员会针对每一个应用创建一个数据库。为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。**
数据库服务器、数据库和表的关系如下:
三、SQL分类
- DDL(data definition language)数据定义语言,用来维护存储数据的结构。代表指令: create,drop,alter。
- DML(data manipulation language)数据操纵语言,用来对数据进行操作。代表指令: insert,delete,update。
- DCL(Data Control Language)数据控制语言,主要负责权限管理和事务。代表指令: grant,revoke,commit。
四、Linux下创建一个数据库
4.1、创建数据库
create database helloworld(数据库名);
4.2、进入(使用)数据库
use helloworld;
进入数据库以后就可以在数据库中创建表了。
4.3、删除数据库
drop database 数据库名;
**对应的数据库文件夹被删除,级联删除,里面的数据表全部被删。 **
五、字符集和校验规则
5.1、查看系统默认字符集以及校验规则
show variables like 'character_set_database';
show variables like 'collation_database';
5.2、查看数据库支持的字符集
show charset;
字符集主要是控制用什么语言。比如utf8就可以使用中文。
5.3、查看数据库支持的字符集校验规则
show collation;
创建一个数据库,校验规则使用utf8_ general_ ci(不区分大小写)。
create database test1 collate utf8_general_ci;
创建一个数据库,校验规则使用utf8_ bin(区分大小写)。
create database test2 collate utf8_bin;
MySQL的默认校验规则为utf8_general_ci。
六、操纵数据库
6.1、查看数据库
show databases;
6.2、显示创建语句
show create database 数据库名;
6.3、数据库的备份
# mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径
**注意该条语句的执行是在命令行中执行的。这时,可以打开看看.sql文件里的内容,其实把我们整个创建数据库,建表,导入数据的语句都装载这个文件中。**
** 如果备份的不是整个数据库,而是其中的一张表:**
# mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql(文件存储路径)
6.4、数据库的还原
mysql> source D:/mysql-5.7.22/mytest.sql(备份的数据库的所在路径);
版权归原作者 北飞的山羊 所有, 如有侵权,请联系我们删除。