收藏 分销(赏)

软件开发文档:数据库-文档.docx

上传人:唯嘉 文档编号:9943472 上传时间:2025-04-14 格式:DOCX 页数:4 大小:13.50KB
下载 相关 举报
软件开发文档:数据库-文档.docx_第1页
第1页 / 共4页
软件开发文档:数据库-文档.docx_第2页
第2页 / 共4页
点击查看更多>>
资源描述
MySQL数据库   MySQL(发音为"my ess cue el",不是"my sequel")是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。   由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。   MySQL这个名字,起源不是很明确。一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。   MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。   MySQL,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。   MySQL的历史最早可以追溯到1979年,那时Oracle也才小打小闹,微软的SQL Server影子都没有。有一个人叫Monty Widenius, 为一个叫TcX的小公司打工,并用BASIC设计了一个报表工具,可以在4M主频和16KB内存的计算机上运行。过了不久,又将此工具,使用C语言重写,移植到Unix平台,当时,它只是一个很底层的面向报表的存储引擎。这个工具叫做Unireg。   可是,这个小公司资源有限,Monty天赋极高,面对资源有限的不利条件,他反而更能发挥潜能,总是力图写出最高效的代码。并因此养成了习惯。与Monty同在一起的还有一些别的同事,很少有人能坚持把那些代码持续写到20年后,而Monty却做到了。   1990年,TcX的customer 中开始有人要求要为它的API提供SQL支持,当时,有人想到了直接使用商用数据库算了,但是Monty觉得商用数据库的速度难令人满意。于是,他直接借助于mSQL的代码,将它集成到自己的存储引擎中。但不巧的是,效果并不太好。于是, Monty雄心大起,决心自己重写一个SQL支持。   1996年,MySQL 1.0发布,只面向一小拨人,相当于内部发布。到了96年10月,MySQL 3.11.1发布了,呵呵,没有2.x版本。最开始,只提供了Solaris下的二进制版本。一个月后,Linux版本出现了。   紧接下来的两年里,MySQL依次移植到各个平台下。它发布时,采用的许可策略,有些与众不同:允许免费商用,但是不能将MySQL与自己的产品绑定在一起发布。如果想一起发布,就必须使用特殊许可,意味着要花银子。当然,商业支持也是需要花银子的。其它的,随用户怎么用都可以。这种特殊许可为MySQL带来了一些收入,从而为它的持续发展打下了良好的基础。(细想想,PostgreSQL曾经有几年限入低谷,可能与它的完全免费,不受任何限制有关系)。   MySQL3.22应该是一个标志性的版本,提供了基本的SQL支持。   MySQL关系型数据库于1998年1月发行第一个版本。它使用系统核心提供的多线程机制提供完全的多线程运行模式,提供了面向C、C++、Eiffel、Java、Perl、PHP、Python以及Tcl等编程语言的编程接口(APIs),支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。   1999-2000年,有一家公司在瑞典成立了,叫MySQL AB (不知道AB是什么意思,待查)。 雇了几个人,与Sleepycat合作,开发出了 Berkeley DB引擎, 因为BDB支持事务处理,所以,MySQL从此开始支持事务处理了。   2000年4月,MySQL对旧的存储引擎进行了整理,命名为MyISAM。同时,2001年,Heikiki Tuuri向MySQL提出建议,希望能集成他们的存储引擎InnoDB,这个引擎同样支持事务处理,还支持行级锁。   如今,遗憾的是,BDB和InnoDB好像都被Oracle收购了,为了消灭竞争对手,哪怕是开源的,都是不择手段。   MySQL与InnoDB的正式结合版本是4.0。   到了MySQL5.0,2003年12月,开始有View, 存储过程之类的东东,当然,其间, bug也挺多。   在2008年1月16号 MySQL被Sun公司收购。   最近,MySQL的创始人Monty Widenius已经向Sun提交了辞呈。head都要走了。   据说,被Sun收购的公司多薄命,不知道MySQL今后前途如何,希望一路走好。相信MySQL的生命力还是很长久的。   时至今日 mysql 和 php 的结合绝对是完美.很多大型的网站也用到mysql数据库.mysql的发展前景是非常光明的! 编辑本段MySQL数据库的导入   MySQL数据库的导入,有两种方法:   1) 先导出数据库SQL脚本,再导入;   2) 直接拷贝数据库目录和文件。   在不同操作系统或MySQL版本情况下,直接拷贝文件的方法可能会有不兼容的情况发生。   所以一般推荐用SQL脚本形式导入。下面分别介绍两种方法。   2. 方法一 SQL脚本形式   操作步骤如下:   2.1. 导出SQL脚本   在原数据库服务器上,可以用phpMyAdmin工具,或者mysqldump命令行,导出SQL脚本。   2.1.1 用phpMyAdmin工具   导出选项中,选择导出“结构”和“数据”,不要添加“DROP DATABASE”和“DROP TABLE”选项。   选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。   将导出的SQL文件保存下来。   2.1.2 用mysqldump命令行   命令格式   mysqldump -u 用户名 -p 数据库名 > 数据库名.sql   范例:   mysqldump -u root -p abc > abc.sql   (导出数据库abc到abc.sql文件)   提示输入密码时,输入该数据库用户名的密码。   2.2. 创建空的数据库   通过主控界面/控制面板,创建一个数据库。假设数据库名为abc,数据库全权用户为abc_f。   2.3. 将SQL脚本导入执行   同样是两种方法,一种用phpMyAdmin(mysql数据库管理)工具,或者mysql命令行。   2.3.1 用phpMyAdmin工具   从控制面板,选择创建的空数据库,点“管理”,进入管理工具页面。   在"SQL"菜单中,浏览选择刚才导出的SQL文件,点击“执行”以上载并执行。   注意:phpMyAdmin对上载的文件大小有限制,php本身对上载文件大小也有限制,如果原始sql文件   比较大,可以先用gzip对它进行压缩,对于sql文件这样的文本文件,可获得1:5或更高的压缩率。   gzip使用方法:   # gzip xxxxx.sql   得到   xxxxx.sql.gz文件。   提示输入密码时,输入该数据库用户名的密码。   3 直接拷贝   如果数据库比较大,可以考虑用直接拷贝的方法,但不同版本和操作系统之间可能不兼容,要慎用。   3.1 准备原始文件   用tar打包为一个文件   3.2 创建空数据库   3.3 解压   在临时目录中解压,如:   cd /tmp   tar zxf mydb.tar.gz   3.4 拷贝   将解压后的数据库文件拷贝到相关目录   cd mydb/   cp * /var/lib/mysql/mydb/   对于FreeBSD:   cp * /var/db/mysql/mydb/   3.5 权限设置   将拷贝过去的文件的属主改为mysql:mysql,权限改为660   chown mysql:mysql /var/lib/mysql/mydb/*   chmod 660 /var/lib/mysql/mydb/*
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 通信科技 > 软件工程

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服