【MySQL】数据库基础
目录
1、什么是mysql
2、主流数据库
3、客户端、服务器、表
4、SQL分类
预备补充:mysql登录----
sudo mysql -h 192.168.8.130 -P 3306 -u root -p
-h:指明登录部署了mysql服务的主机
-P:指明我们要访问的端口号(端口号可以在配置文件里面进行修改)
-u:指明用户(默认为root)
-p:指明需要输入密码
1、什么是mysql
mysql他是数据库服务的客户端
mysqld他是数据库服务的服务器端
mysql本质:基于C(mysql)S(mysqld)模式的一种网络服务
MySQL是,一套给我提供数据存取的服务的网络程序
数据库一般是指,在磁盘或者内存中存储的特定结构组织的数据---将来在磁盘上存储的一套数据库方案。
数据库服务:---mysqld
为什么不直接把数据存储在文件里,而是要以数据库的形式存储在文件里???
因为一般的文件确实提供了数据的存储功能,但是文件并没有提供非常好的数据管理能力(用户角度)
数据库本质:对数据存储内容的一套管理方案,mysql给mysqld字段或要求,mysqld直接给mysql结果。
1、建立数据库,本质就是在Linux下创建一个目录!
2、在数据库内建表,本质就是在Linux下创建对应的文件!
这个工作其实本质上是mysqld做的。
3、数据库本质其实也是文件!!只不过这些文件并不由程序员直接操作,而是由数据库服务(mysqld)帮我们进行操作。
2、主流数据库
SQL Sever : 微软的产品, .Net 程序员的最爱,中大型项目。Oracle : 甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如 MySQL 。MySQL :世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS ,论坛。对简单的 SQL 处理效果好。PostgreSQL : 加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。SQLite : 是一款轻型的数据库,是遵守 ACID 的关系型数据库管理系统,它包含在一个相对小的 C 库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K 的内存就够了。H2 : 是一个用 Java 开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。
3、客户端、服务器、表
4、SQL分类
1)DDL:数据定义语言,用来维护存储数据的结构
代表指令:create、drop、alter
2)DML:数据操纵语言,对数据进行操作
代表指令:insert、delete、update
3)DCL:数据控制语言,主要负责权限管理和事务
代表指令:grant, revoke, commit