标题:[翻译] MySQL 5.0 参考手册
只看楼主
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
 问题点数:0 回复次数:30 
[翻译] MySQL 5.0 参考手册
MySQL 5.0 Reference Manual

摘要:

该手册适用于MySQL 5.0 版至 5.0.19版。

文档生成日期:2006-02-10 (第1285次修订)

该参考手册适用于MySQL 5.0 版至 5.0.19版。由于MySQL5.0和旧版本的程序有很多功能上的不同,所以该手册不适用于旧版本。如果你仍然使用的是旧版本,请参考旧版本的参考手册。

Overview of MySQL AB:


MySQL AB 是MySQL的创始人和其主要开发者的公司,由David Axmark, Allan Larsson, and Michael "Monty" Widenius 在瑞典创建。

我们致力于MySQL的发展和推广。MySQL AB公司拥有MySQL源代码、Logo、商标以及该手册的版权。

MySQL AB开发MySQL的指导原则:
1.做世界上最好,使用最广泛的数据库
2.To be available and affordable by all
3.易于使用
4.不断改进,以使之更快更安全
5.让使用和改进更有乐趣
6.没有Bug

MySQL AB 公司及其员工的信念:
1.我们崇尚开源精神和支持开源团体
2.我们要做良好市民
3.我们乐于分享我们的价值和思想
4.我们回复邮件并提供技术支持
5.We are a virtual company, networking with others
6.我们反对软件专利权

MySQL的网站http://www.mysql.com提供MySQL和MySQL AB的最新资讯。

By the way,公司名称中的“AB”是瑞典语“aktiebolag”的首字母缩写,它的意思是“股份公司”,等同于英语的“MySQL, Inc.”和德语的“MySQL GmbH ”

[此贴子已经被作者于2006-2-14 23:17:56编辑过]

搜索更多相关主题的帖子: 手册 MySQL 翻译 
2006-02-13 23:37
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 
呵呵,工作忙,晚上十一点半后才来翻译了这么几行。希望大家不要嫌我罗嗦哦。

相濡以沫,不如相忘于江湖
2006-02-14 01:05
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 

1.4 Overview of MySQL Database Management System

MySQL是一个数据库管理系统。
MySQL是一个关系数据库管理系统。
MySQL是开放源代码的。
MySQL数据库服务器非常快速、可靠且易于使用。
MySQL服务器以Server/Client模式或嵌入模式工作。
有很多MySQL的第三方软件可供使用,很有可能你最喜欢的软件和编程语言都提供对MySQL的支持。

1.4.1. History of MySQL

起初,我们希望使mSQL数据库系统能够使用我们的快速底层规则(ISAM)连接我们的数据表。但经过一些测试之后,我们发现mSQL不够快也不够灵活。我们的数据库依然保存着一套和mSQL完全一样的SQL接口,我们这样设计是为了以前为mSQL写的第三方程序能够更容易地移植到MySQL。

MySQL这个名字的出处不是很清楚。也许是我们有很多文件夹和程序库都习惯使用My前缀,也许是我们奠基人 Monty Widenius的女儿名字叫My,究竟是那个原因使得我们的数据库叫MySQL,我们也不是很清楚。

我们的Logo上的那只海豚名字叫“Sakila”, 当初为了给它取名我们创始人们进行了激烈的争论,最后Ambrose Twebaze取得了胜利, Ambrose Twebaze是来自非洲Swaziland的开源软件作者,他说 Sakila这个女性化的名字来源于Swaziland的当地语言,也是坦桑尼亚一个小镇的名字,这个小镇紧邻着他的家乡乌干达。

[此贴子已经被作者于2006-2-19 1:24:57编辑过]


相濡以沫,不如相忘于江湖
2006-02-14 23:45
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 

1.4.2. The Main Features of MySQL

下面的列表描述了MySQL的一些重要特性。查看Section 1.6, “MySQL Development Roadmap”, 可以获得更多新特性的信息。

Internals and Portability:

  • 使用 C 和 C++语言开发。

  • 经过广泛的编译器测试。

  • 能够运行于不同平台。 See Section 2.1.1, “Operating Systems Supported by MySQL”.

  • 使用 GNU Automake, Autoconf, 和Libtool 工具,使得MySQL更容易移植。

  • 提供针对C, C++, Eiffel, Java, Perl, PHP, Python, Ruby, 和 Tcl等语言的API接口。 See Chapter 22, APIs and Libraries.

  • 充分利用内核线程使用多线程技术,在多CPU可用时,能更容易地充分发挥多CPU的优势。

  • 提供支持事务和不支持事务的数据库引擎。

  • Using very fast B-tree disk tables (MyISAM) with index compression.

  • 非常容易添加其他的数据库引擎, This is useful if you want to add an SQL interface to an in-house database.

  • 非常快速的基于线程的内存分配系统。

  • Very fast joins using an optimized one-sweep multi-join.

  • 使用内存中的Hash表作为临时表。

  • SQL函数使用高效优化的类库实现,使得SQL函数尽可能快,通常,在查询被初始化之后就完全没有内存分配。

  • MySQL的代码使用Purify (一个商业的内存泄漏检测工具) 和Valgrind( 一个 GPL工具)进行测试。 (http://developer.kde.org/~sewardj/).

  • 可以作为client/server模式的软件使用,也可以作为嵌入式的数据库使用。

数据类型::
  • 很多数据类型: signed/unsigned integers 1, 2, 3, 4, and 8 bytes long, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET, ENUM, and OpenGIS spatial types. See Chapter 11, Data Types.

  • 固定长度和可变长度的记录。.

语句和函数:
  • SELECTWHERE子句中可以使用很多函数和符号, 比如:
    mysql> SELECT CONCAT(first_name, ' ', last_name)
        -> FROM citizen
        -> WHERE income/dependents > 10000 AND age > 30;
    
  • 完全支持SQL GROUP BYORDER BY 子句。 支持群组函数 (COUNT(), COUNT(DISTINCT ...), AVG(), STD(), SUM(), MAX(), MIN(), and GROUP_CONCAT()).。

  • Support for LEFT OUTER JOIN and RIGHT OUTER JOIN with both standard SQL and ODBC syntax.

  • 支持标准SQL的表格别名和列别名特性。

  • DELETE, INSERT, REPLACE, and UPDATE 返回将要改变或受影响的行数。 也可以返回匹配的行数 ,只要我们在连接服务器的时候设置一个标志。

  • MySQL中特定的SHOW命令可以获得databases, database engines, tables, and indexes的信息,

    EXPLAIN命令可以决定怎样优化一个查询。

  • 函数名和列名不会发生冲突,比如, ABS是一个可用的列名。唯一的限制就是函数名和它和面的"("之间不能有空格。 See Section 9.5, “Treatment of Reserved Words in MySQL”.

  • 可以在一个查询中混合不同数据库中的表 (as of MySQL 3.22)。

相濡以沫,不如相忘于江湖
2006-02-19 01:55
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
得分:0 
京山游侠,
我觉得翻译的成果是一份很宝贵的资料, 最后应该写成 chm 文件 或者 pdf 文件, 我的操作系统是Windows 的, 我注意到 mySql 自带的是 chm 文件. chm 文件比 pdf 文件的一个优势在于 chm 文件提供了索引功能, 而这个是 pdf 文件所没有的. 所以我觉得是不是我们最终也做一个 chm 文件. 我在网上找了一个 chm Editor, 下载地址为: http://www.soft32.com/download_14859.html
你看看这个软件是不是可以用.

我也没有做过chm 文件, 哪位朋友如果有这方面的经验, 请告知, 比如用什么软件来制作 chm 格式的文件, 以及如何编辑. 先谢过.


自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2006-02-19 05:53
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 
呵呵,我是直接从mysql的网站下载的html格式的文档(每一章为一个html页面),然后在DreamWeaver中进行翻译,然后依然保存为html文档,这样可以省略排版的时间。

到最后,做成chm文件肯定是必然的。这方面我可以做。

相濡以沫,不如相忘于江湖
2006-02-19 22:55
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 

安全性:

  • 基于授权和密码的系统是相当有弹性很安全的,而且允许基于主机的认证。当你连接服务器的时候,密码都是加密传输的,所以相当安全。

可测量性和限制:
  • 可操作大型数据库。 我们使用的数据库包含约5000万条记录。 我们还知道有些人使用 MySQL Server 管理60,000 个表格和5,000,000,000条记录。

  • 每个表最多可以建立64个索引 (MySQL 4.1.2版以前只能建立32个)。 每个索引由1 到16 个列The maximum index width is 1000 bytes (500 before MySQL 4.1.2). An index may use a prefix of a column for CHAR, VARCHAR, BLOB, or TEXT column types.

连通性:
  • 客户端使用TCP/IP套接字连接 MySQL服务器,不管服务器运行在什么平台上。 在Windows NT系列的平台上(NT, 2000, XP, or 2003)客户端可以使用命名管道连接服务器。 在Unix系统,客户端可以使用Unix domain socket 文件连接服务器。

  • 在MySQL 4.1及更高版本,运行于Windows的服务器同样提供基于共享内存的连接, 只要使用--shared-memory 可选参数启动服务器。 客户端可以用--protocol=memory 参数使用共享内存连接。
  • The Connector/ODBC (MyODBC) interface 使得客户端程序可以使用 ODBC (Open Database Connectivity) 连接服务器。 For example,你能用MS Access 连接 MySQL服务器。 Clients can be run on Windows or Unix. MyODBC source is available. All ODBC 2.5 functions are supported, as are many others. See Chapter 23, Connectors.

  • The Connector/J interface 使得Java程序能够使用 JDBC连接服务器。Clients can be run on Windows or Unix. Connector/J source is available. See Chapter 23, Connectors.

  • MySQL Connector/NET 使得 .NET 开发者们非常容易的使用MySQL开发高性能的数据库应用。它实现了ADO.NET 接口。开发者们可以选择 .NET 语言开发MySQL程序。MySQL Connector/NET 是使用100%纯C# 编写的托管ADO.NET 驱动。 See Chapter 23, Connectors.

国际化:

  • 该服务器能够提供多种语言的错误信息。See Section 5.11.2, “Setting the Error Message Language”.

  • 完全支持多种不同的字符集。 包括latin1 (cp1252), german, big5, ujis等。 比如,在表名和列名中可以使用 ‘å’, ‘ä’ 和‘ö’ 等北欧字符。从MySQL 4.1版起提供对Unicode的支持。

  • 所有数据都按选定的字符集存储,所有的字符串比较都不分大小写。

  • 排序是按照选定的字符集进行的 (默认使用瑞典语)。It is possible to change this when the MySQL server is started. To see an example of very advanced sorting, look at the Czech sorting code. MySQL Server supports many different character sets that can be specified at compile time and runtime.

客户端和工具:
  • MySQL Server 支持检查,优化和修复表格的SQL语句, 这些语句通过客户端工具mysqlcheck 执行。MySQL 也包含 myisamchk, 这是一个非常快速的命令行工具,可以对MyISAM表执行这些操作。 See Chapter 5, Database Administration.

  • 所有的MySQL程序都可以通过调用 --help 或者-? 来得到联机帮助。

[此贴子已经被作者于2006-2-19 23:42:48编辑过]


相濡以沫,不如相忘于江湖
2006-02-19 23:35
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 
MySQL 提供对ODBC,Java和.net的支持,真是太让人激动了,呵呵。

相濡以沫,不如相忘于江湖
2006-02-19 23:44
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 

1.4.3. MySQL的稳定性

很多人可能会问:“MySQL Server的稳定性如何?”,或者是“我能够相信MySQL Server吗?”,在这一节,我们将阐明这个问题,并回答一些准备使用MySQL的人关心的重要问题。这一节的信息以邮件列表上统计的数据作为基础。

原始代码起源于1980年, 它提供了一个稳定的代码基础, 在原始的数据库引擎中使用 ISAM 数据表格式保持向后兼容,在TcX(MySQL AB的前身)内部, MySQL 的代码在1996年年中之前从未遇到过问题。当MySQL Database Software一被发布, 我们的新用户很快发现了其中一些没有经过测试的代码,从那时起,每个新版本发布的时候,都会遇到一些小问题,尽管每个新版本都包含一些新功能。t

每一个MySQL的发布版都是可用的,只有当用户故意试图进入灰色地带的时候,软件才会出现问题。 Problems have occurred only when users try code from the “gray zones.” 自然,新用户不知道什么是灰色地带;这一节就试图向用户展示目前已知的这方面的信息。Naturally, new users don't know what the gray zones are; this section therefore attempts to document those areas that are currently known. 这些讨论主要是针对Versions 3.23及其以后的版本。All known and reported bugs are fixed in the latest version, with the exception of those listed in the bugs section, which are design-related. See Section A.8, “Known Issues in MySQL”.

MySQL Server 的设计是多层的互相独立的模块,下面的列表表明一些新的模块经过了很好的测试:

  • 复制 (稳定)

    Large groups of servers using replication are in production use, with good results. Work on enhanced replication features is continuing.

  • InnoDB数据表 (稳定)

    支持事务的InnoDB数据储存引擎自从3.23.49版之后就是稳定的,InnoDB已经被用于大型的、高负荷的生产系统。

  • BDB数据表 (稳定)

    Berkeley DB 代码是非常稳定的, 但是我们依然不断在改进MySQL Server中的BDB 事务存储引擎接口。

  • 全文检索 (稳定)

    全文检索被广泛使用,重要的增强特性于MySQL 4.0和 4.1版被加入。

  • MyODBC 3.51 (稳定)

    MyODBC 3.51基于ODBC SDK 3.51以被广泛使用。Some issues brought up appear to be application-related and independent of the ODBC driver or underlying database server.


相濡以沫,不如相忘于江湖
2006-02-22 23:25
京山游侠
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2006-2-12
得分:0 

1.4.4. MySQL的数据表可以为多大

MySQL 3.22 在数据表的大小上有4GB (4 gigabyte)的限制。在MySQL 3.23中使用MyISAM存储引擎,数据表的最大大小增加到65536 terabytes (2567 – 1 bytes),所以实际的数据表的大小就限制于操作系统的文件大小了。

InnoDB存储引擎能够把一个表存储到多个文件中,这多个文件称为表格空间, 所以能够允许表的大小超过操作系统最大的文件限制, 表格空间可以是磁盘阵列,所以能够保存极端大的表,最大限制为 64TB。

下面的表格列出了常见的操作系统的文件大小限制, 这只是一个估计的数据,并不权威,精确的数据请查看你的操作系统所带的文档。

操作系统 文件大小限制
Linux 2.2-Intel 32-bit 2GB (LFS: 4GB)
Linux 2.4+ (using ext3 filesystem) 4TB
Solaris 9/10 16TB
NetWare w/NSS filesystem 8TB
Win32 w/ FAT/FAT32 2GB/4GB
Win32 w/ NTFS 2TB (possibly larger)
MacOS X w/ HFS+ 2TB

On Linux 2.2, you can get MyISAM tables larger than 2GB in size by using the Large File Support (LFS) patch for the ext2 filesystem. On Linux 2.4, patches also exist for ReiserFS to get support for big files (up to 2TB). Most current Linux distributions are based on kernel 2.4 and include all the required LFS patches. With JFS and XFS, petabyte and larger files are possible on Linux. However, the maximum available file size still depends on several factors, one of them being the filesystem used to store MySQL tables.

For a detailed overview about LFS in Linux, have a look at Andreas Jaeger's Large File Support in Linux page at http://www.suse.de/~aj/linux_lfs.html.

Windows系统用户请注意: FAT和VFAT (FAT32)并不适合于MySQL, 请使用NTFS格式。

默认情况下, MySQL 创建MyISAM 表使用一个最大限制为4GB的内部结构。你可以使用SHOW TABLE STATUS 语句来检查表格的最大大小,或者使用myisamchk -dv tbl_name。See Section 13.5.4, “SHOW Syntax”.

如果你需要大于4GB的MyISAM 表格,并且你的操作系统支持大文件,那么CREATE TABLE 语句提供AVG_ROW_LENGTHMAX_ROWS 选项。 See Section 13.1.5, “CREATE TABLE Syntax”. 你也可以在表格创建之后使用 ALTER TABLE语句来增加它的大小。See Section 13.1.2, “ALTER TABLE Syntax”.

下面是针对MyISAM表格大小限制的其他信息:


相濡以沫,不如相忘于江湖
2006-02-22 23:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-45438-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.166754 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved