这个章节总结了MYSQL客户端程序的功能 尤其对于数据库管理员。这个章节讨论了以下几个方面
1. MYSQL 管理
2.mysql
3. mysqladmin
4.mysqlimport
5. mysqldump
其他的管理程序感兴趣的包括mysqlcheck myisamchk好mysqltotcopy
25.1 管理客户端程序概述
这个章节提供了MYSQL客户端程序的概述,特别对于数据库管理员。
每个程序可以让你执行重要的任务:
1.MYSQL 管理员是一个图形客户端工具用于管理server
mysql是一个常用的命令行客户端工具用于发送语句到server
mysqladmin 是一个管理的命令行工具帮助你管理server
mysqlimport 提供了命令行接口来加载数据文件的语句
它用于加载数据文件到表格里 不需要你自己执行LOAD DATA INFILE 语句
mysqldump是一个命令行工具用于转储数据库和表的内容
用于备份或者copy 数据库到其他机器。
这个章节包括只有常规的程序功能的汇总。
25.2 Mysql Administrator
MYSQL 管理客户端是设计用于管理操作
不像其他的客户端程序,MYSQL administrator 提供了一个图形接口用于和server 交互。
相比其他客户端,基于字符的,
MYSQL 管理器是更加直关的使用,更容易的说明server 状态的信息
MYSQL Administrator 可以让你执行下面的任务:
1.监控server 性能,负载,和内存使用
2. 显示和设置配置信息:
3.启动和关闭server
4.设置用户账号,grant 和revoke 权限 和设置密码
5.显示连接信息和kill 连接
mysql 本地通讯走的是mysql.sock
6.创建和删除数据库
7. 检查 修复和优化表
8.执行备份和恢复数据库
9. 监控复制server
10.显示查询的,慢查询和错误日志的内容
这里的有些功能是可用对于本地或者远程servers.其它的,
比如配置server 或者显示它的日志,只对于本地server是可用的。
MYSQL administrators 需要一个图形环境比如Windows 或者X Windows窗口。
然而,如果MYSQL server是运行在没有图形环境的主机上,
你可以通过MYSQL Administrator在有图形环境的机器上远程连接。
有些功能只适用于MYSQL Administrator 和server 运行在一台主机上。
25.3 mysql
mysql 程序是一个一般用途的客户端程序用于发送SQL语句到server,
因此可以执行任何管理操作通过使用SQL 。以下列出的描述一些它的管理能力:
1.创建和删除数据库
2.创建 删除和修改表和索引
3.从表格里检索数据
4.设置用户账号,grant和revoke 权限和设置密码
5.显示server 配置和版本信息
6.显示或者重新设置server 状态变量
7.重新加载授权表
8.flush 日子文件或者各种各样的server caches
9.启动和停止复制或者显示复制状态
10.显示客户端连接或者Kill连接
你可以使用mysql 在交互式模式,你输入查询然后显示结果。
mysql 也可以操作在批处理模式,把查询的语句存储在文本文件里
25.4 mysqladmin
mysqladmin 命令行客户端用于特定的管理操作。
它的功能包括以下几部分:
1.Ping server 确认server 是否运行和接收客户端连接
2. shutdown server
3.创建和删除数据库
4.显示 server 配置和版本信息
5.显示和充值server 状态变量
6.设置密码
7.加载授权表
8.Flush log files 或者各种server caches
9.启动和停止复制
mysqladmin全部功能列表,调用程序--help选项
mysqladmin 接收一个或者多个命令在命令行上,举个例子,下面的命令显示主要的状态信息
shell>mysqladmin status variables
一些mysqladmin 命令只对于MYSQL 账号有管理权限的有用
比如,关闭server 有必要使用管理账号比如root 有SHUTDOWN 权限的
shell>mysqladmin -u root -p shutdown
/etc/init.d/mysql 脚本启动
25.5 mysqlimport:
mysqlimport 客户端程序加载数据到表格里,它提供了命令行接口来加载数据语句。
也就是说,mysqlimport 检查命令行的选项。它连接到server 执行load data infile语句
加载文件到相应的表。
默认的,mysqlimport 期望数据文件包含tab分割符
25.6 mysqldump
mysqldump 客户端程序可以转储表内容到文件,被用于数据库备份 或者用于传输数据库的内容到其他服务器。
mysqldump 可以export 表用tab分割的文件,或者产生SQL格式的dump文件包含了创建表和
插入语句。
[mysql@master ~]$ mysqldump -utest -p123456 -p test t1 >t1
当使用dump表作为数据文件,mysqldump 默认写表记录用tab分割
Tables 内容转储到数据文件只能在server主机上,因此当使用mysqldump这种方式的时候,
最好在server上执行。
25.7 客户端程序限制
没有一个管理客户端程序执行所有的管理任务,了解给定的程序是干什么的这点很重要,
但是你也需要了解程序什么不能干的。比如:
1.mysqladmin 可以创建和删除数据库,但是它不能用于创建和删除单个表或者索引。
它能改变密码,但是不是创建和删除账户。mysql和MYSQL ADMINISTRATOR 程序可以执行那些操作。
2.mysqlimport 加载数据文件,但是只能加载由mysqldump产生的文件。然而,mysqldump也能生成
SQL格式的dump文件包含INSERT语句,mysqlimport 不能加载这类文件。
因此,mysqlimport 相对于mysqldump只是一个局部的组件。处理dump files包含SQL语句,
使用mysql 代替