MySQL数据库初学者指南:你必须知道的注意事项

Web服务器 欲思 1评论

数据库是大多数网站的重要组成部分。从简单的博客到复杂的电子商务网站,这些网站都由数据库来驱动运行。

如果你是一名Web开发人员,你肯定已经知道了很多关于MySQL数据库的基础知识:

  • MySQL是一个开放源码的小型关联式数据库管理系统,是最流行的开源数据库系统 。
  • 使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
  • 使用标准的SQL(结构化查询语言)数据语言形式来的处理数据库中的信息
  • 它是免费的,支持多线程,非常可靠和快速
  • 它为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等
  • 他对于开发人员来说是一个易于使用的开发软件或应用程序
  • Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。

本文是一篇关于MySQL初学者指南的文章,介绍了一些关于MySQL的基础知识和学习途径。

MySQL的初学者指南:你必须知道的注意事项

什么是MySQL?

MySQL原本是一个开放源代码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被升阳微系统(Sun Microsystems)收购。2009年,甲骨文公司(Oracle)收购升阳微系统公司,MySQL成为Oracle旗下产品。

MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如Google和Facebook等网站。非常流行的开源软件组合LAMP中的“M”指的就是MySQL。

MySQL的两个组成部分

有两个主要的组件到MySQL:

1、MySQL数据库服务器,mysqlId – 它一直在后台运行,接受所有来自客户端程序的连接等等。

2、各种客户端和实用程序 – 包括mysql命令行的MySQL监控客户端。

如何安装MySQL及其相关程序

1、官方的MySQL安装包 – 进入MySQL的官方网站,上面有各个平台上不同的预编译软件包。只需下载包文件,将其解压缩,然后运行安装程序。

2、Linux的包管理器 – 使用Linux的软件包管理器,如Ubuntu软件自由中心配备了安装的MySQL以及Apache和PHP以及其他一些软件。

3、XAMPPLAMPWAMP软件包 – 这是在计算机上快速安装一个完整的MySQL配置环境最简单的方法。它包括Apache网络服务器,MySQL,PHP和Perl的安装。

MySQL的基本语法

下面这些基本的MySQL语句列表是对基本的CRUD操作(在做计算处理时的增加(Create)、查询(Retrieve)(重新得到数据)、更新(Update)和删除(Delete)几个单词的首字母简写)和并执行一些用户身份验证过程比较有用的。

  • ALTER DATABASE
  • ALTER TABLE
  • ALTER VIEW
  • ANALYZE TABLE
  • BACKUP TABLE
  • CACHE INDEX
  • CHANGE MASTER TO
  • CHECK TABLE
  • CHECKSUM TABLE
  • COMMIT
  • CREATE DATABASE
  • CREATE INDEX
  • CREATE TABLE
  • CREATE VIEW
  • DELETE
  • DESCRIBE
  • DO
  • DROP DATABASE
  • DROP INDEX
  • DROP TABLE
  • DROP USER
  • DROP VIEW
  • EXPLAIN
  • FLUSH
  • GRANT
  • HANDLER
  • INSERT
  • JOIN
  • KILL
  • LOAD DATA FROM MASTER
  • LOAD DATA INFILE
  • LOAD INDEX INTO CACHE
  • LOAD TABLE…FROM MASTER
  • LOCK TABLES
  • OPTIMIZE TABLE
  • PURGE MASTER LOGS
  • RENAME TABLE
  • REPAIR TABLE
  • REPLACE
  • RESET
  • RESET MASTER
  • RESET SLAVE
  • RESTORE TABLE
  • REVOKE
  • ROLLBACK
  • ROLLBACK TO SAVEPOINT
  • SAVEPOINT
  • SELECT
  • SET
  • SET PASSWORD
  • SET SQL_LOG_BIN
  • SET TRANSACTION
  • SHOW BINLOG EVENTS
  • SHOW CHARACTER SET
  • SHOW COLLATION
  • SHOW COLUMNS
  • SHOW CREATE DATABASE
  • SHOW CREATE TABLE
  • SHOW CREATE VIEW
  • SHOW DATABASES
  • SHOW ENGINES
  • SHOW ERRORS
  • SHOW GRANTS
  • SHOW INDEX
  • SHOW INNODB STATUS
  • SHOW LOGS
  • SHOW MASTER LOGS
  • SHOW MASTER STATUS
  • SHOW PRIVILEGES
  • SHOW PROCESSLIST
  • SHOW SLAVE HOSTS
  • SHOW SLAVE STATUS
  • SHOW STATUS
  • SHOW TABLE STATUS
  • SHOW TABLES
  • SHOW VARIABLES
  • SHOW WARNINGS
  • START SLAVE
  • START TRANSACTION
  • STOP SLAVE
  • TRUNCATE TABLE
  • UNION
  • UNLOCK TABLES
  • USE

MySQL的字符串函数

以下是MySQL的字符串函数列表,它们大多用于创建字符串和其他一些元素联营条件语句。

  • AES_DECRYPT
  • AES_ENCRYPT
  • ASCII
  • BIN
  • BINARY
  • BIT_LENGTH
  • CHAR
  • CHAR_LENGTH
  • CHARACTER_LENGTH
  • COMPRESS
  • CONCAT
  • CONCAT_WS
  • CONV
  • DECODE
  • DES_DECRYPT
  • DES_ENCRYPT
  • ELT
  • ENCODE
  • ENCRYPT
  • EXPORT_SET
  • FIELD
  • FIND_IN_SET
  • HEX
  • INET_ATON
  • INET_NTOA
  • INSERT
  • INSTR
  • LCASE
  • LEFT
  • LENGTH
  • LOAD_FILE
  • LOCATE
  • LOWER
  • LPAD
  • LTRIM
  • MAKE_SET
  • MATCH AGAINST
  • MD5
  • MID
  • OCT
  • OCTET_LENGTH
  • OLD_PASSWORD
  • ORD
  • PASSWORD
  • POSITION
  • QUOTE
  • REPEAT
  • REPLACE
  • REVERSE
  • RIGHT
  • RPAD
  • RTRIM
  • SHA
  • SHA1
  • SOUNDEX
  • SPACE
  • STRCMP
  • SUBSTRING
  • SUBSTRING_INDEX
  • TRIM
  • UCASE
  • UNCOMPRESS
  • UNCOMPRESSED_LENGTH
  • UNHEX
  • UPPER

MySQL的日期和时间函数

以下是MySQL的日期和时间函数的名称列表,这些命令是用于操作日期和时间的。

  • ADDDATE
  • ADDTIME
  • CONVERT_TZ
  • CURDATE
  • CURRENT_DATE
  • CURRENT_TIME
  • CURRENT_TIMESTAMP
  • CURTIME
  • DATE
  • DATE_ADD
  • DATE_FORMAT
  • DATE_SUB
  • DATEDIFF
  • DAY
  • DAYNAME
  • DAYOFMONTH
  • DAYOFWEEK
  • DAYOFYEAR
  • EXTRACT
  • FROM_DAYS
  • FROM_UNIXTIME
  • GET_FORMAT
  • HOUR
  • LAST_DAY
  • LOCALTIME
  • LOCALTIMESTAMP
  • MAKEDATE
  • MAKETIME
  • MICROSECOND
  • MINUTE
  • MONTH
  • MONTHNAME
  • NOW
  • PERIOD_ADD
  • PERIOD_DIFF
  • QUARTER
  • SEC_TO_TIME
  • SECOND
  • STR_TO_DATE
  • SUBDATE
  • SUBTIME
  • SYSDATE
  • TIME
  • TIMEDIFF
  • TIMESTAMP
  • TIMESTAMPDIFF
  • TIMESTAMPADD
  • TIME_FORMAT
  • TIME_TO_SEC
  • TO_DAYS
  • UNIX_TIMESTAMP
  • UTC_DATE
  • UTC_TIME
  • UTC_TIMESTAMP
  • WEEK
  • WEEKDAY
  • WEEKOFYEAR
  • YEAR
  • YEARWEEK

上面的一些MySQL语句和函数,具体的一些中文解说还可以参考w3school的一些实例。感兴趣的可以自己去学习。

谁在用MySQL?

Bank of Finland(芬兰银行)

Bank of Finland(芬兰银行)

芬兰银行开发了一个基于MySQL的通用性支付清算系统模拟器进行支付和结算系统的模拟。它在Windows上运行,该应用程序已被全球国家银行的经济学家广泛采用。

The White House(美国白宫)

The White ouse(美国白宫)

一个白宫网站的编程翻修的消息已经在科技世界议论纷纷。白宫网站数据库操作使用正是基于MySQL数据库的基础上。

Adobe (还用我多说么。中国有多少盗版的PS呢…)

adobe

Adobe系统是全球最大的软件公司之一,也是在印刷,Web,交互,移动,视频和电影等方面创造性工具的领先供应商。Adobe把MySQL嵌入到Adobe Creative Suite3的专有组件里,包括Adobe Acrobat CS3,Adobe® Bridge CS3, 和Adobe® Version CueR CS3等,使工作组能够更有效地对复杂的项目。

iStockphoto

istock

iStockphoto.com是是世界上最大的精品图片库,以全球最优惠的价格提供由会员制作的免版税图片作品。和它的姐妹公司istockpro.com一样,里面有国内外许多杰出的专业摄影师。

每个星期,有大约5000名摄影师上传2500多张照片(2.5 GB)到MySQL® – 世界上最流行的开源数据库 – 约1,250张照片(1.25 GB)被允许发布到网站上面。

去哪里学习MySQL?

虽然有很多网站都可以可以学到的MySQL,我列出了一些免费及收费的网站,希望可以帮助你有打下关于MySQL学习的坚实基础。

1. MySQL Documentation(MySQL官方文档)

MySQL Documentation(MySQL文档)

MySQL文档包含的所有的命令和更新以及关于您想了解这个主题的所有一切。

2. Lynda

Lynda

这是计算机技能培训教学视频的训练库,成员通过月度和年度来计划学习。

3. Tizag
Tizag

这是个专门教初级web程序员如何使用HTML,CSS,PHP和MySQL的一个网站。你可以去看看,这是一个很不错的网站。

MySQL 相关的书

1. MySQL Cookbook(有英文版和中文版,链接就不加了,免得人说我做淘宝客什么的。大家自己去淘宝或amazon上搜就有)

作者: Paul DuBois.

Paul DuBois是MySQL在线参考手册的第一批贡献者之一,这是在20世纪90年代后期MySQL的开放年代支持管理员和开发者的一个文档项目。他已经撰写了多本关于MySQL的著作。

为各个层次的、没有时间和精力来从头解决MySQL问题的用户提供了大量简练、精辟的代码段和可用的示例,每节都阐述了代码应该如何工作及原因所在。

《MySQL Cookbook(中文版)》在目前仍然广为流行的MySQL 4.1的基础上加入了MySQL 5.0的内容及它强大的新特性。

读者将掌握用MySQL客户端程序执行SQL查询的方法,以及通过API编写与MySQL服务器交互程序的方法。

书中有大量使用Perl、PHP、Python、Java甚至Ruby来检索并显示数据的新示例,还增加了子查询、视图、存储过程、触发器和事件等内容。

2. MYSQL in a Nutshell(同上)

作者:Russell Dyer.

本书涵盖了适用于MySQL 5.1版本的所有命令和编程信息,其中包括一些新增特性和语言接口,对于列举的大部分语句和函数,给出了它们的用法示例。

本书大概:

  • 提供了MySQL语句、函数、配置选项和实用工具的一个完整手册。
  • 给出了几个指导章节用于帮助新手入门。
  • 为PHP、Perl和C语言提供了应用程序编程接口(API)。
  • 在每章的API开头部分提供了简要的指南。
  • 新增复制、触发器和存储过程章节。
  • 提供了许多MySQL的实用示例。
  • 给出了一些有用的提示,用于帮助读者克服难题。

无论你为何而使用MySQL,本书充满了大量的知识财富,给你节省了许多用于尝试的时间以及令人厌烦的在线搜索。

3. MySQL Stored Procedure Programming(同上)

作者:Guy Harrison, Steven Feuerstein.

Oracle开发人员都不重视MySQL,直到Stored Procedure(存储过程,是一组为了完成特定功能的SQL语句集)在MySQL5中得到很好支持。

这本书包含了以下内容:

  • 如何实现MySQL的存储过程
  • 大量的实际例子配合具体解说
  • 涵盖了存储过程的基础知识,包括语言基础,条件语句和错误处理等。

结束语:

MySQL数据库是一个可以进行讨论的大话题。但也还有一些更重要的领域等我们去探索,例如,像数据库范式,表分组,更新和删除数据库中的记录等。

在这篇文章中,给你介绍了一些需要了解的MySQL基本信息。建议在网络上看看一些相关的书籍和视频教程,学MySQL基础的应该就可以更加扎实。

希望你从文章中学到一些东西,下次再见!

注:原文参考自:MySQL Guide for Beginners: What You Must Know。本文由欲思博客原创编译。部分内容有删改,翻译如有误请指正。

转载请注明:欲思博客 » MySQL数据库初学者指南:你必须知道的注意事项

如果你觉得这篇文章或者我分享的主题对你有帮助,请支持我继续更新网站和主题 !捐赠本站
喜欢 (23)or分享 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽
  1. 学习到了
    香港虚拟主机2014-07-22 10:05 回复