新手扫盲:MySQL入门基础知识简介

2016-01-29 14:55 1 1 收藏

新手扫盲:MySQL入门基础知识简介,新手扫盲:MySQL入门基础知识简介

【 tulaoshi.com - MySQL 】

MySQL是一个广受Linux社区人们喜爱的半商业的数据库。 MySQL是可运行在大多数的Linux平台(i386,Sparc,etc),以及少许非Linux甚至非Unix平台。

1、许可费用 

MySQL的普及很大程度上源于它的宽松,除了略显不寻常的许可费用。MySQL的价格随平台和安装方式变化。MySQL的Windows版本(NT和9X)在任何情况下都不免费,而任何Unix变种(包括Linux)的MySQL如果由用户自己或系统管理员而不是第三方安装则是免费的,第三方案庄则必须付许可费。

2、价格

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/mysql/)

平台 安装方式 价格

Windows NT,9X 任何 200美元

Unix或Linux 自行安装 免费

Unix或Linux 第三方安装 200美元

需要一个应用组件 200美元

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/mysql/)

可以得到多种支持合同,内容太多不再罗列,最新报价可咨询MySQL站点。

3、安装

可以在MySQL站点上获得大多数主要的软件包格式(RPM、DBE、TGZ),客户端库和各种语言“包装”(Wrapper)可以分开的RPM格式获得。RPM格式的安装没有多大麻烦,并且无需初始配置。在rc3.d(以RedHat RPM为例)生成一个初始脚本,故MySQL守护进程在多用户模式下重启时被启动运行。MySQL的守护进程(mysqld)消耗很少的内存(在运行RedHat 5.1的奔腾133上,每个守护进程使用500K内存和另外4M共享内存的开销)并在只有在执行真正的查询时才装载到处理器上,这意味着对小型数据库来说,MySQL可以相当轻松地使用而不会对其他系统功能有太大的影响。

4、数据类型

字段支持大量数据类型是件好事。通常的整数、浮点数、字符串和数字均以多种长度表示,并支持变长的BLOB(Binary Large OBject)类型。对整数字段由自动增量选项,日期时间字段也能很好的表示。

MySQL与大多数其他数据库系统不同的是提供两个相对不常用的字段类型:ENUM和SET。ENUM是一个枚举类型,非常类适于Pascal语言的枚举类型,它允许程序员看到类似于'red、'green'、'blue'的字段值,而MySQL只将这些值存储为一个字节。SET也是从Pascal借用的,它也是一个枚举类型,但一个单独字段一次可存储多个值,这种存储多个枚举值的能力也许不会给你一些印象(并可能威胁第三范式定义),但正确使用SET和CONTAINS关键字可以省去很多表连接,能获得很好的性能提高。

5、SQL兼容性

MySQL包含一些与SQL标准不同的转变,他们的大多数被设计成是对SQL语言脚本语言的不足的一种补偿。然而,另一些扩展确实使 MySQL与众不同,例如,LINK子句搜索是自动地忽略大小写的。MySQL 也允许用户自定义的SQL函数,换句话说,一个程序员可以编写一个函数然后集成到MySQL中,并且其表现的与任何基本函数如SUM()或AVG ()没有什么不同。函数必须被编译道一个共享库文件中(.so文件),然后用一个LOAD FUNCTION命令装载。

它也缺乏一些常用的SQL功能,没有子选择(在查询中的查询)。视图(View)也没了。当然大多数子查询可以用简单的连接(join)子句重写,但有时用两个嵌套的查询思考问题比一个大连接容易。同样,视图仅仅为程序员隐蔽where子句,但这正是程序员们期望的另一种便利。

6、存储过程和触发器

MySQL没有一种存储过程(Stored Procedure)语言,这是对习惯于企业级数据库的程序员的最大限制。多语句SQL命令必须通过客户方代码来协调,这种情形是借助于相当健全的查询语言和赋予客户端锁定和解锁表的能力,这样才允许的多语句运行。

7、参考完整性(Referential Integrity-RI)

MySQL的主要的缺陷之一是缺乏标准的RI机制;然而,MySQL的创造者也不是对其用户的愿望置若罔闻,并且提供了一些解决办法。其中之一是支持唯一索引。Rule限制的缺乏(在给钉字段域上的一种固定的范围限制)通过大量的数据类型来补偿。不简单地提供检查约束(一个字段相对于同一行的另一个字段的之值的限制)、外部关键字和经常与RI相关的“级联删除”功能。有趣的是,当不支持这些功能时,SQL分析器容忍这些语句的句法。这样做目的是易于移植数据库到MySQL中。这是一个很好的尝试,并且它确实未来支持该功能留下方便之门;然而,那些没有仔细阅读文档的的人可能误以为这些功能实际上是存在的。

8、安全性

自始至终我对MySQL最大的抱怨是其安全系统,它唯一的缺点是复杂而非标准,另外只有到调用mysqladmin来重读用

来源:https://www.tulaoshi.com/n/20160129/1494752.html

延伸阅读
上 给Linux新手 [系列之五] "大夫,我痛,告诉我怎么办吧" "别着急,你先说你哪里怎么痛了" "噢,哪里痛还不一样治啊,我肚子痛,快告诉我怎么办吧,我很着急的" "别着急,再说说你昨天都干了些什么啊?" "怎么跟昨天干什么还有关系?我昨天就干了我每天作的事情嘛,我觉得很正常,你怎么还不告诉我怎么...
学习了一下JNI,发表文章的时候不知道该选什么好了,不知道JNI应该属于那个范畴^_^。 1.简介 JNI是Java Native Interface的缩写,它的设计目的是: The standard Java class library may not support the platform-dependent features needed by your application. You may already have a library or a...
给Linux新手 [系列之三] OK,从哪里得到Linux呢?为了讨论方便,省去不表要的枝节问题,我只讨论光盘安装。所以第一步是得到一张RedHat 6.2的光盘。得到光盘有两种方式,一种是去买光盘,这个比较简单,外面盗版盘就有,不过需要指出的是,RedHat 6.2的光盘不可能是盗版盘,因为RedHat 6.2遵循GPL协议,它是不收取版权费用的。所以...
给Linux新手 [系列之二] OK,你的 第一个问题 是:什么是Linux,它和UNIX有什么区别?问这个问题的原因呢,多半是你还在大一的时候一次去实验室,看到高年纪学生在一个特大屏幕的机器上作题,你羡慕的看着他,问:"这是什么计算机啊,这么高级?"而他不无骄傲的说,"这是UNIX"。后来你懂的多了,知道那是SUN工作站,上面运行着Sola...
上 给Linux新手 [系列之四] OK,要讲硬盘分区了。在讲这个问题之前,我先来讲讲概念问题,什么是概念问题呢?你还记得第一次,绝对的第一次听到A:盘,B:盘,C盘时候的感觉么?在那之前自己也许知道计算机有个存储数据的地方,因为在电视上或者广告上看到过磁带机(我一直不知道为什么到了很久很久那种一个傻姑娘在一个磁带柜前面...

经验教程

361

收藏

81
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部