知识大全 Mysql数据库领域的中间派
Posted 数据库
篇首语:拼一个春夏秋冬,愿一生无怨无悔。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Mysql数据库领域的中间派相关的知识,希望对你有一定的参考价值。
Mysql数据库领域的中间派 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
MySQL是一个广受Linux社区人们喜爱的半商业的数据库 MySQL是可运行在大多数的Linux平台(i Sparc etc) 以及少许非Linux甚至非Unix平台 许可费用 MySQL的普及很大程度上源于它的宽松 除了略显不寻常的许可费用 MySQL的价格随平台和安装方式变化 MySQL的Windows版本(NT和 X)在任何情况下都不免费 而任何Unix变种(包括Linux)的MySQL如果由用户自己或系统管理员而不是第三方安装则是免费的 第三方案庄则必须付许可费 价格 平台 安装方式 价格 Windows NT X 任何 美元 Unix或Linux 自行安装 免费 Unix或Linux 第三方安装 美元 需要一个应用组件 美元 可以得到多种支持合同 内容太多不再罗列 最新报价可咨询MySQL站点 安装 可以在MySQL站点上获得大多数主要的软件包格式(RPM DBE TGZ) 客户端库和各种语言 包装 (Wrapper)可以分开的RPM格式获得 RPM格式的安装没有多大麻烦 并且无需初始配置 在rc d(以RedHat RPM为例)生成一个初始脚本 故MySQL守护进程在多用户模式下重启时被启动运行 MySQL的守护进程(mysqld)消耗很少的内存(在运行RedHat 的奔腾 上 每个守护进程使用 K内存和另外 M共享内存的开销)并在只有在执行真正的查询时才装载到处理器上 这意味着对小型数据库来说 MySQL可以相当轻松地使用而不会对其他系统功能有太大的影响 数据类型 字段支持大量数据类型是件好事 通常的整数 浮点数 字符串和数字均以多种长度表示 并支持变长的BLOB(Binary Large OBject)类型 对整数字段由自动增量选项 日期时间字段也能很好的表示 MySQL与大多数其他数据库系统不同的是提供两个相对不常用的字段类型 ENUM和SET ENUM是一个枚举类型 非常类适于Pascal语言的枚举类型 它允许程序员看到类似于 red green blue 的字段值 而MySQL只将这些值存储为一个字节 SET也是从Pascal借用的 它也是一个枚举类型 但一个单独字段一次可存储多个值 这种存储多个枚举值的能力也许不会给你一些印象(并可能威胁第三范式定义) 但正确使用SET和CONTAINS关键字可以省去很多表连接 能获得很好的性能提高 SQL兼容性 MySQL包含一些与SQL标准不同的转变 他们的大多数被设计成是对SQL语言脚本语言的不足的一种补偿 然而 另一些扩展确实使 MySQL与众不同 例如 LINK子句搜索是自动地忽略大小写的 MySQL 也允许用户自定义的SQL函数 换句话说 一个程序员可以编写一个函数然后集成到MySQL中 并且其表现的与任何基本函数如SUM()或AVG ()没有什么不同 函数必须被编译道一个共享库文件中( so文件) 然后用一个LOAD FUNCTION命令装载 它也缺乏一些常用的SQL功能 没有子选择(在查询中的查询) 视图(View)也没了 当然大多数子查询可以用简单的连接(join)子句重写 但有时用两个嵌套的查询思考问题比一个大连接容易 同样 视图仅仅为程序员隐蔽where子句 但这正是程序员们期望的另一种便利 存储过程和触发器 MySQL没有一种存储过程(Stored Procedure)语言 这是对习惯于企业级数据库的程序员的最大限制 多语句SQL命令必须通过客户方代码来协调 这种情形是借助于相当健全的查询语言和赋予客户端锁定和解锁表的能力 这样才允许的多语句运行 参考完整性(Referential Integrity RI) MySQL的主要的缺陷之一是缺乏标准的RI机制 然而 MySQL的创造者也不是对其用户的愿望置若罔闻 并且提供了一些解决办法 其中之一是支持唯一索引 Rule限制的缺乏(在给钉字段域上的一种固定的范围限制)通过大量的数据类型来补偿 不简单地提供检查约束(一个字段相对于同一行的另一个字段的之值的限制) 外部关键字和经常与RI相关的 级联删除 功能 有趣的是 当不支持这些功能时 SQL分析器容忍这些语句的句法 这样做目的是易于移植数据库到MySQL中 这是一个很好的尝试 并且它确实未来支持该功能留下方便之门 然而 那些没有仔细阅读文档的的人可能误以为这些功能实际上是存在的 安全性 自始至终我对MySQL最大的抱怨是其安全系统 它唯一的缺点是复杂而非标准 另外只有到调用mysqladmin来重读用户权限时才发生改变 通常的SQL GRANT/REVOKE 语句到最近的版本才被支持 但是至少他们现在有了 MySQL的编写者广泛地记载了其特定的安全性系统 但是它确实需要一条可能是别无它法的学习过程 备份和恢复 数据导入/导出 强制参考一致性的缺乏显著地简化备份和恢复 单靠数据导入/导出就可完美复制这一功能 LOAD DATA INFILE命令给了数据导入很大的灵活性 SELECT INTO命令实现了数据导出的相等功能 另外 既然MySQL不使用原始的分区 所有的数据库数据能用一个文件系统备份保存 数据库活动能被记载 与通常的数据库日志不同(存储记录变化或在记录映像之前/之后) MySQL记载实际的SQL语句 这允许数据库被恢复到失败前的那一点 但是不允许提交(mit)和回卷(rollback)操作 连接性 MySQL客户库是客户/服务器结构的C语言库 它意味着一个客户能查询驻留在另一台机器的一个数据库 然而MySQL真正的强项处于该库中的语言 包装器(wrapper) Perl Pathon和PHP只是一部分 Apache的Web服务器也有许多模块例如目录存取文件等允许各种各样的Apache配置信息(例如目录存取文件)使用MySQL 应用程序接口简单 一致并且相但完整 另外 多平台ODBC驱动程序可自由获得 未来 MySQL的开发继续以快速进行着 事实上 开发步伐对大多数开放源代码是一种挑战 本文提到的几个抱怨中有很多新功能正在解决 然而 我将不对还没确实存在的特征做评价 开发者们向我表明了在未来的开发中把增加查询功能和提高查询速度作为最高优先级 总结 Mysql是数据库领域的中间派 它缺乏一个全功能数据库的大多数主要特征 但是又有比类似Xbase记录存储引擎更多的特征 它象企业级RDBMS那样需要一个积极的服务者守护程序 但是不能象他们那样消费资源 查询语言允许复杂的连接(join)查询 但是所有的参考完整必须由程序员强制保证 MySQL在Linux世界里找到一个位置-提供简洁和速度 同时仍然提供足够的功能使程序员高兴 数据库程序员将喜欢其查询功能和广泛的客户库 数据库管理员会觉得系统缺乏主要数据库功能 他们会发觉它对简单数据库(在不能保证购买大牌数据库时)是有价值的 cha138/Article/program/MySQL/201311/29327相关参考
目标 原来MYSQL数据库位置是/var/lib/mysql/*移动到/home/lib/mysql/*下 环境 VMWORKSTATION centos mysql 步骤 #ser
MySQL学习笔记-数据库概述及MySQL简介 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 数
:mysql是我们使用最多的数据库如果在日常中正确的对mysql数据进行备份下面我们就来做这事通过脚本来实现 ##########################################
MySQL数据库线程缓冲池详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! MySQL数据库线
MySQL数据库的出错代码列表 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! MySQL出错代码
最简便的MySql数据库备份方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!使用MYSQL进行数
最近碰到一个mysql数据库的问题就是一个标准的servlet/tomcat网络应用后台使用mysql数据库问题是待机一晚上后第二天早上第一次登录总是失败察看日志发现如下错误 mysqljdbc
搞定MySQL数据库中文模糊检索问题 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在MySQL
Mysql数据库错误代码中文详细说明 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在mysql
MYSQL数据库主主同步实战 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! MYSQL支持单向异