MySQL基础为什么大部分人选择使用MySQL数据库?
Posted 路遥叶子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL基础为什么大部分人选择使用MySQL数据库?相关的知识,希望对你有一定的参考价值。
目录
一、为什么大部分人选择使用mysql数据库?
绝大多数的使用linux操作系统的大中小型互联网网站都在使用mysql作为其后端数据库存储。从大型的BAT门户,到电商,到分类门户,无一例外都在使用Mysql。
原因主要有以下几点:
(1) Mysql性能卓越,服务稳定,很少出现宕机。
(2) 开放源代码,自主性,使用成本低。
(3) 历史悠久,社区用户非常活跃,遇到问题可以寻求帮助。
(4) 软件体积小,安装使用简单,并且易于维护。
(5) 品牌口碑效应,使得企业无需考虑就直接用之,LAMP LEMP流行架构。
(6) 支持多种操作系统,提供多个API接口,支持多个开发语言,特别对流行的php语言有很好的支持。
二、MySQL简介
1.MySQL介绍
(1) MySQL数据库管理系统由瑞典的DataKonsultAB公司研发,该公司被Sun公司收购;现在Sun公司又被Oracle公司收购,因此MySQL目前属于Oracle旗下的产品。
(2) MySQL所使用的SQL语言是用于访问数据库最常用 的标准化语言。
目前,MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小,速度快,总体拥有成本低,一般中小型网站的开发都选择MySQL作为网站数据库。
2.MySQL的特点
(1) MySQL数据库的用C和C++语言编写的,以保证源码的可移植性。
(2) 支持多个操作系统,例如:Windows、Linux、Mac OS等等。
(3) 支持多线程,并发执行能力比较强,可以同时执行多个任务。可以充分的利用CPU多核机制和资源。
(4) 为多种编程语言提供API,包括C语言,java,PHP,Python语言等。
(5) MySQL在内部优化了一些SQL算法,有效的提高了查询速度。
(6) MySQL开放源代码且无版权制约,可以自己修改定制数据库,自主性强,使用成本低。
(7) MySQL历史悠久、社区及用户非常活跃,遇到问题可以很快获取到帮助。
3. MySQL的版本
从用户的角度,针对不同的用户
MySQL分为两种不同的版本:社区版和商业版
-
MySQL Community Server
-------- 社区版本,免费,但是MySQL不提供官方技术支持。
-
MySQL Enterprise Edition
---------商业版,收费版本,可试用30天,官方提供技术支持
-
MySQL Cluster
-------- 集群版,开源免费,可将几个MySQL Server封装成一个Server
-
MySQL Cluster CGE
-------- 高级集群版,需付费
-
MySQL Workbench(GUI TOOL)
-------- 一款专门为MySQL设计的ER/数据库建模工具。MySQL Workbench又分为两个版本,社区版(MySQL Workbench OSS)和商用版(MySQL Workbench SE)
从单纯的版本数字区分
MySQL的命名机制使用由3个数字和一个后缀组成的版本号。
例如,像mysql-8.0.26的版本号这样解释:
第1个数字(8)是主版本号,描述了文件格式。所有版本5的发行都有相同的文件格式。
第2个数字(0)是发行级别。主版本号和发行级别组合到一起便构成了发行序列号。
第3个数字(26)是在此发行系列的版本号,随每个新分发版递增。
目前,My SQL的最新版本为MySQL 8.0。
写到最后
四季轮换,已经数不清凋零了多少, 愿我们往后能向心而行,一路招摇胜!
🐋 你的支持认可是我创作的动力
💟 创作不易,不妨点赞💚评论❤️收藏💙一下
😘 感谢大佬们的支持,欢迎各位前来不吝赐教
Mysql基础知识:视图
Mysql 视图
1. 视图简介
1)视图的含义:
视图是一张虚拟的表。与包含数据的表不一样,视图只包含使用时动态检索数据的查询。
2)为什么使用视图:
重用SQL语句。
简化复杂的SQL操作。在编写查询后,可以方便地重用它而不必知道它的基本查询细节。
使用表的组成部分而不是整个表。
保护数据。可以给用户授予表的特定部分的访问权限而不是整个表的访问权限。
更改数据格式和表示。视图可返回与底层表的表示和格式不同的数据。
注意:
重要的是知道视图仅仅是用来查看存储在别处的数据的一种设施。视图本身不包含数据,因此它们返回的数据是从其他表中检索出来的。在添加或更改这些表中的数据时,视图将返回改 变过的数据。
3)视图的规则和限制:
与表一样,视图必须唯一命名(不能给视图取与别的视图或表相同的名字)。
对于可以创建的视图数目没有限制。
为了创建视图,必须具有足够的访问权限。这些限制通常由数据库管理人员授予。
视图可以嵌套,即可以利用从其他视图中检索数据的查询来构造一个视图。
ORDER BY 可以用在视图中,但如果从该视图检索数据 SELECT 中也含有 ORDER BY ,那么该视图中的 ORDER BY 将被覆盖。
视图不能索引,也不能有关联的触发器或默认值。
视图可以和表一起使用。例如,编写一条联结表和视图的 SELECT语句。
2. 创建视图
CREATE ALGORITHM = UNDEFINED | MERGE | TEMPTABLE VIEW 视图名 ( 属性清单 ) AS SELECT 语句 WITH CASCADED | LOCAL CHECK OPTION;
ALGORITHM是可选参数,表示视图选择的算法。
UNDEFINED:表示mysql将自动选择所使用的算法;
MERGE:表示将使用的视图语句与视图定义结合起来,使得视图定义的某一部分取代语句的对应部分;
TEMPTABLE:表示将视图的结果存入临时表,然后使用临时表执行语句。
属性清单是可选参数,指定视图中各个属性的名词。默认情况下与SELECT语句中查询的属性相同。
SELECT语句是一个完整的查询语句,表示从某个表查询满足条件的记录。
WITH CHECK OPTION是可选参数,表示更新视图时要保证在该视图的权限范围内。
CASCADED:表示更新视图时要满足所有相关视图和表的条件;
LOCAL:表示更新视图时要满足视图本身的定义条件即可。
注意:创建视图分为:1)从单表创建视图;2)从多表创建视图。
3. 查看视图
DESCRIBE 视图名; SHOW TABLE STATUS LIKE ‘视图名‘; SHOW CREATE VIEW 视图名;
SELECT * FROM information_schema.views;
前两种为查看视图的基本信息,后两种为查看视图的详细信息。
4. 修改视图
修改视图指修改视图中包含的表的字段。
1)CREATE OR REPLACE VIEW修改视图
CREATE OR REPLACE ALGORITHM = UNDEFINED | MERGE | TEMPTABLE VIEW 视图名 ( 属性清单 ) AS SELECT 语句 WITH CASCADED | LOCAL CHECK OPTION;
2)ALTER语句
ALTER ALGORITHM = UNDEFINED | MERGE | TEMPTABLE VIEW 视图名 ( 属性清单 ) AS SELECT 语句 WITH CASCADED | LOCAL CHECK OPTION;
注意:
CREATE OR REPLACE VIEW可以修改现有的视图,也可以创建视图。而ALTER只能修改视图。
5. 更新视图
更新视图指通过视图来插入、更新和删除表中的数据。
因为视图是一个虚拟的表,其中没有数据。通过视图更新都是切换到基本表来更新。并且只能更新权限范围内的数据,超出范围则不能更新。
可以通过INSERT、UPDATE、DELETE更新。
注意:
以下这几种情况不能更新视图:
(1)视图中保护SUM()、COUNT()、MAX()、MIN()等函数;
(2)视图中包含UNION、UNION ALL、DISTINCT、GROUP BY、HAVING等关键字;
(3)常量视图;
(4)视图中的SELECT包含子查询;
(5)由不可更新的视图导出的视图;
(6)创建视图时,ALGORITHM为TEMPTABLE类型;
(7)视图对应的表上存在没有默认值的列,而且该列没有包含在视图中。
6. 删除视图
DROP VIEW [IF EXISTS] 视图名列表 [RESTRICT | CASCADE];
以上是关于MySQL基础为什么大部分人选择使用MySQL数据库?的主要内容,如果未能解决你的问题,请参考以下文章
为啥MYSQL很少人用视图,MYSQL的视图和MSSQL的视图有啥本质区别。