数据库是大多数网站的重要组成部分。从简单的博客到复杂的电子商务网站,这些网站都由数据库来驱动运行。
如果你是一名Web开发人员,你肯定已经知道了很多关于MySQL数据库的基础知识:
- MySQL是一个开放源码的小型关联式数据库管理系统,是最流行的开源数据库系统 。
- 使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
- 使用标准的SQL(结构化查询语言)数据语言形式来的处理数据库中的信息
- 它是免费的,支持多线程,非常可靠和快速
- 它为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等
- 他对于开发人员来说是一个易于使用的开发软件或应用程序
- Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的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、XAMPP,LAMP,WAMP软件包 – 这是在计算机上快速安装一个完整的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
作者: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。本文由科科博客原创编译。部分内容有删改,翻译如有误请指正。