工具名称 |
简单介绍 |
示例 |
mysqld |
MYSQL服务程序 |
|
mysql |
以交互式执行sql命令的工具程序 |
mysql -uroot -proot |
mysqld_safe |
安全启动MYSQL服务器 |
mysqld_safe –defaults-file=/u01/3307/my.cnf 2>&1 > /dev/null & |
mysqladmin |
用来完成各种系统维护和管理任务(查看工作状态、设置各种权限) |
|
mysqldump |
mysql数据库逻辑备份工具 |
|
mysqlimport |
将文本文件数据读入MYSQL数据表 | |
mysqlshow |
用来查看数据库、数据表和数据列信息 |
|
myisamchk |
检查和修复MyISAM数据表文件 |
|
myisampack | 对MyISAM数据表进行压缩并生产只读的数据表 |
二、mysqld主要选项介绍
目录和文件 |
|
basedir = path |
使用给定目录作为根目录(安装目录) |
datadir = path |
给定目录读取数据库文件 |
pid-file filename | 指定一个存放进程ID文件 |
socket = filename |
指定一个套接字文件 |
内存管理、优化、查询缓存区 | |
bulk_insert_buffer_siz =n |
为一次插入多条新纪录的INSERT命令分配的缓存区长度,默认8M |
key_buffer_size =n |
用来存放索引区块的RAM值,默认8M |
join_buffer_size = n |
在join操作的数据列没有索引时为join操作分配的缓存区长度,默认128K |
max_heap_table_size =n |
heap数据表最大长度,默认16M |
max_connections = n |
MYSQL服务器同时处理的数据库连接的最大数据,默认是100 |
query_cache_limit =n |
允许临时存放在查询缓存区栗的查询结果的最大长度,默认1M |
read_buffer_size = n |
为数据表顺序读取数据的读操作保留的缓存区的长度,默认128K |
sort_buffer = n |
为拍讯操作分配的缓存区长度,默认2M |
table_cache = n |
同时打开的数据表的数量默认是64 |
日志 |
|
log =file |
把所有的连接和所有的SQL日志计入日志 (属于通用查询日志) |
log-slow-queryies = file |
将执行超过long_query_time变量值的查询命令记入日志 |
long_query_time = n |
慢查询的执行时上限,默认设置是10s |
long_query_not_using_indexs |
把慢查询以及在执行时没有使用索引的查询命令全部记入日志 |
log-bin = filename |
把对数据进行修改的所有SQL命令,及(insert、update和delete)以二进制的格式记入日志 |
log-bin-index = filename |
二进制日志功能的索引文件 |
max_binlog_size = n |
二进制文件的最大长度,默认1G。在一个二进制日志文件的信息量超过这个最大值前,MYSQL服务器会自动提供一个新的二进制日志文件接上 |
binlog-do-db = dbname |
只把给定数据库里的变化情况记入二进制日志文件,其他数据库里的变化情况不记载 |
sync_binlog = n |
每经过平N次日志写操作进吧日志文件写入硬盘一次,即对日志信息进行一次同步。n=1最安全 |
log_error = file |
记录出错情况的日志文件名 |
镜像(主控镜像服务器) |
|
servedr-id = n | 给服务器分配一个独一无二的ID编号 |
binlog-do/ignore-db =dbname |
只把给定数据库里的变化情况记入一个二进制日志文件/不把给定数据库的变化记入日志文件 |
镜像(从属镜像服务器) |
|
server-id = n |
给服务器分配一个唯一ID编号 |
log-slave-updates |
启动从属服务器上的日志功能,构建成镜像链路(A->B->C) |
master-host =hostname |
主控服务器的主机名或IP地址 |
master – user =username |
从属服务器用来连接主控服务器的用户名 |
master – password =password |
主控服务器登录密码 |
master-port=n |
端口 |
read-only=0/1 |
0,允许从属服务器独立执行SQL命令;1,从属服务器智能执行来自主控服务器的SQL命令 |
replicate-do-table=dnmane.tablename |
只对给定数据表进行镜像处理 |
replicate-do-wild-table=dnmane.tablename |
同上,但数据库和数据库表的名字允许出现通配符‘%’ |
replicate-do-db=dbname |
只对这个数据库进行镜像处理 |
二、mysqladmin常用功能示例
示例 |
说明 |
[mysql@mysql ~]$ mysqladmin -uroot -pmysql -i 2 -c 5 status |
每两秒查看一次服务器状态,总共重复5次 |
[mysql@mysql ~]$ mysqladmin -uroot -pmysql password ‘mysql123’ |
修改root密码 |
[mysql@mysql ~]$ mysqladmin -uroot -pmysql ping |
查看mysqlserver是否可用 |
[mysql@mysql ~]$ mysqladmin -uroot -pmysql variables |
查看系统变量值 |
[mysql@mysql ~]$ mysqladmin -uroot -pmysql processlist |
显示服务器所有运行的进程 |
[mysql@mysql ~]$ mysqladmin -uroot -p reload |
重载权限信息 |
[mysql@mysql ~]$ mysqladmin -uroot -p refresh |
刷新所有表缓存,并关闭和打开log |
[mysql@mysql ~]$ mysqladmin -uroot -p shutdown |
使用安全模式关闭数据库 |
[mysql@mysql ~]$ mysqladmin -uroot -p processlist [mysql@mysql ~]$ mysqladmin -uroot -p kill idnum |
mysqladmin执行kill进程 |
[mysql@mysql ~]$ mysqladmin -u root -p stop-slave [mysql@mysql ~]$ mysqladmin -u root -p start-slave |
停止和启动MySQL replication on a slave server |
备注:后续工具持续总结,更新