MySQL的应用程序
MySQL的应用程序有服务器端也有客户端的。
有许多不同的MySQL客户端程序可以连接服务器以访问数据库或执行管理任务。也可以使用其它工具。这些程序不与服务器进行通讯但可以执行MySQL相关的操作。
1. 概述:
1) 如下讨论MySQL AB提供的命令行程序,并讨论运行这些程序时如何指定选项。大多数程序具有其操作专用的选项,但指定选项的语法都近似。
比如:每个MySQL程序有许多不同的选项。但每个MySQL程序均提供一个--help选项,可以用来全面描述程序不同的选项。例如,可以试试mysql --help。
2)MySQL AB还提供了3个GUI客户程序供MySQL服务器使用:
a. MySQL管理器:该工具用于管理MySQL服务器、数据库、表以及用户。
b. MySQL查询浏览器:该图形工具由MySQL AB提供,用于创建、执行以及优化对MySQL数据库的查询。
c. MySQL移植工具包:该工具可以帮助你将计划和数据从其它关系数据库管理系统移植到MySQL。
2. 如下介绍MySQL提供的命令行程序
1)服务器部分:MYSQL服务器和服务器启动脚本
mysqld是MySQL服务器
mysqld_safe、mysql.server和mysqld_multi是服务器启动脚本
mysql_install_db初始化数据目录和初始数据库
详细介绍参考:http://dev.mysql.com/doc/refman/5.1/zh/database-administration.html
<!--[if !supportLists]-->2) <!--[endif]-->访问服务器的客户端程序:
a. mysql是一个命令行客户程序,用于交互式或以批处理模式执行SQL语句。
b. mysqladmin是用于管理功能的客户程序。
c. mysqlcheck执行表维护操作。
d. mysqldump和mysqlhotcopy负责数据库备份。
e. mysqlimport导入数据文件。
f. mysqlshow显示信息数据库和表的相关信息
更详细介绍参考:http://dev.mysql.com/doc/refman/5.1/zh/client-side-scripts.html
3)独立于服务器操作的工具程序:
myisamchk执行表维护操作。
myisampack产生压缩、只读的表。
mysqlbinlog是处理二进制日志文件的实用工具。
perror显示错误代码的含义。
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
大多数MySQL分发包括上述的全部程序,只是不包含那些与平台相关的程序。(例如,在Windows中不使用服务器启动脚本)。不同的只是RPM分发更加具体化。
3. 调用并使用这些MySQL程序
1)从命令行调用MySQL程序(从shell或命令提示),应输入程序名,随后输入指导操作的选项或其他参数
2)--全名或者-缩写代表开始的参数为选项,如--user, 或者-u,--help或-?
3) 非选项参数(不以破折号开始的参数)为程序提供更详细的信息。如mysql程序将第一个非选项参数解释为数据库名
4)有些选项是对部分程序通用的。比较常用的有--host, --user, --password等。尤其要记住的是--help.
4. 使用这些程序的选项:
1)有3中方式设置某个程序的选项:
a. 命令行后面指定(经常用于具体某次的调用)
b. 程序启动之后在选项文件中设置(每次程序运行都会起作用)
c. 在环境变量中设置(每次程序运行都会起作用)
2)MySQL的某个程序运行的时候,对于选项。首先检查环境变量、然后检查选项文件、最后检查命令行来确定给出了哪些选项。因此优先级依次升高,最后环境变量和选项文件中的可能会被命令行中指定的所覆盖。平时选项文件中用得比较多,当作默认值,命令行中用做某一次对选项的设置。
3)在命令行上使用选项
参考http://dev.mysql.com/doc/refman/5.1/zh/using-mysql-programs.html 的<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span lang="EN-US" style="">4.3.1</span></chsdate>
4)使用选项文件
MySQL程序可以从选项文件(有时也称为配置文件)读取启动选项。选项文件提供了一种很方便的方式来指定常用的选项,因此不需要每次运行程序时从命令行输入。
参考如上链接的<chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899"><span lang="EN-US">4.3.2</span></chsdate>
5)用环境变量指定选项
6)以及使用选项设置程序变量
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
二、着重介绍“访问服务器的客户端程序”
参考资料:http://dev.mysql.com/doc/refman/5.1/zh/client-side-scripts.html
MySQL客户端程序和实用工具:
1. myisampack,压缩MyISAM表以产生更小的只读表的一个工具。
2. mysql,交互式输入SQL语句或从文件以批处理模式执行它们的命令行工具。
3. mysqlaccess,检查访问主机名、用户名和数据库组合的权限的脚本。
4. mysqladmin,执行管理操作的客户程序,例如创建或删除数据库,重载授权表,将表刷新到硬盘上,以及重新打开日志文件。mysqladmin还可以用来检索版本、进程,以及服务器的状态信息。
5. mysqlbinlog,从二进制日志读取语句的工具。在二进制日志文件中包含的执行过的语句的日志可用来帮助从崩溃中恢复。
6. mysqlcheck,检查、修复、分析以及优化表的表维护客户程序。
7. mysqldump,将MySQL数据库转储到一个文件(例如SQL语句或tab分隔符文本文件)的客户程序。“mysqldump数据库备份程序”
8. mysqlhotcopy,当服务器在运行时,快速备份MyISAM或ISAM表的工具。
9. mysql import,使用LOAD DATA INFILE将文本文件导入相关表的客户程序。
10. mysqlshow,显示数据库、表、列以及索引相关信息的客户程序。
11. perror,显示系统或MySQL错误代码含义的工具。
12. replace,更改文件中或标准输入中的字符串的实用工具。
每个MySQL程序有许多不同的选项。但每个MySQL程序均提供一个---help选项,可以用来全面描述程序不同的选项。例如,可以试试mysql---help。