MySQL中文参考手册之my.conf
2013-07-18 17:14
597 查看
4.15.3 自动启动和停止MySQL
mysql.server脚本可以被用来启动或停止服务器,通过用
start或
stop参数调用它:
shell> mysql.server start shell> mysql.server stop
mysql.server可在MySQL安装目录下的“share/mysql”目录里找到,或在MySQL源代码树的“support-files”目录下找到。
在
mysql.server启动服务器之前,它把目录改变到MySQL安装目录,然后调用
safe_mysqld。如果你有在一个非标准的地点安装的二进制分发,你可能需要编辑
mysql.server。修改它,运行
safe_mysqld前,
cd到正确的目录。如果你想要作为一些特定的用户运行服务器,你可以改变
mysql_daemon_user=root行使用其他用户,你也能修改
mysql.server把其他选项传给
safe_mysqld。
mysql.server stop通过向服务器发出一个信号停止它。你可手工执行
mysqladmin shutdown关闭服务器。
当你开始使用MySQL作为生产应用时,你可能想要增加这些启动并且停止命令到在你的“/etc/rc * 文件中适当的地方。注意如果你修改
mysql.server,那么如果某个时候你升级MySQL时,你的修改版本将被覆盖,因此你应该做一个你可重新安装的编辑过的版本的拷贝。
如果你的系统使用“/etc/rc.local”启动外部脚本,你应该添加下列到其中:
/bin/sh -c 'cd /usr/local/mysql ; ./bin/safe_mysqld &'
你也可以在一个全局“/etc/my.cnf”文件中增加
mysql.server的选项。一个典型的“/etc/my.cnf”文件可能看起来像这样:
mysqld] datadir=/usr/local/mysql/var socket=/tmp/mysqld.sock port=3306 [mysql.server] user=mysql basedir=/usr/local/mysql
[code]mysql.server脚本使用下列变量:
user、
datadir、
basedir、
bindir和
pid-file。 [/code]
见4.15.4 选项文件。
4.15.4 选项文件
MySQL3.22 可以从选项文件中为服务器和客户读取缺省启动选项。在Unix上,MySQL从下列文件读取缺省选择:
文件名 | 用途 |
/etc/my.cnf | 全局选项 |
DATADIR/my.cnf | 服务器特定的选项目 |
~/.my.cnf | 用户特定的选项 |
DATADIR是MySQL的数据目录(典型地对二进制安装是“/usr/local/mysql/data”或对源代码安装是“/usr/local/var”)。注意:这是在配置时间指定的目录,不是
mysqld启动时用
--datadir指定的目录!(
--datadir在服务器寻找选项文件的地方无效,因为它以前寻找他们,它处理任何命令行参数。)
MySQL在Win32上从下列文件读取缺省选项:
文件名 | 用途 |
windows-system-directory/my.ini | |
C:/my.cnf | 全局选项 |
C:/mysql/data/my.cnf | 服务器特定的选项 |
/而不是
/指定所有的路径,如果你使用
/,你需要指定两个,因为在MySQL里面
/是转义字符。
MySQL试图以上述所列的顺序读取选项文件。如果存在多个选项文件,在一个后面文件读取的选项优先于在先前读取的一个文件中指定的同一个选项,在命令行上指定的选项优先于在任何选项文件指定了的选项。有些选择能使用环境变量指定,在命令行或在选项文件指定的选项优先于环境变量。
下列程序支持选项文件:
mysql、
mysqladmin、
mysqld、
mysqldump、
mysqlimport、
mysql.server、
myisamchk和
myisampack。
你能使用选项文件指定一个程序支持的任意长的选项!用
--help选项运行程序可得到的可用选项的表。
一个选项文件可以包含下列形式的行:
#comment注释行以“#”或“;”开始,空行被忽略。
[group]
group是你想为其设置选项的程序或组的名字。在一个组行后,任何
option或
set-variable行应用于命名的组,直到选择文件结束或其他组的给出。
option这等价于在命令行上的
--option。
option=value这等价于在命令行上的
--option=value。
set-variable = variable=value这等价于在命令行上的
--set-variable variable=value。该语法必须被用来设置一个
mysqld变量。
client组允许你指定适用于所有MySQL客户的选项(不是
mysqld)。这是理想的组来指定你用来与服务器连接的口令。(但是保证只是选项文件本身是可读的和可写的。)
注意,对域选项和值,所有头部和尾部空白自动被删除。你可以在的值串中使用转义顺序“/b”、“/t”、“/n”、“/r”、“//”和“/s”(“/s”==空白)。
这是一个典型的全局选项文件:
[client] port=3306 socket=/tmp/mysql.sock
[mysqld] port=3306 socket=/tmp/mysql.sock set-variable = key_buffer=16M set-variable = max_allowed_packet=1M
[mysqldump] quick
这是典型的用户选项文件:
[client] # The following password will be sent to all standard MySQL clients password=my_password [mysql] no-auto-rehash
如果你有一个源代码分发,你将在“support-files”目录下找到一个名为“my-example.cnf”样品配置文件。如果你有二进制分发,在“DIR/share/mysql”目录下查找,在此
DIR是MySQL安装目录的路径(一般是“/usr/local/mysql”)。你可以拷贝“my-example.cnf”到你的主目录(重新命名拷贝为“.my.cnf”)来试验。
为了告诉一个MySQL程序不读任何选项文件,在命令行上指定
--no-defaults作为第一个选项。这必须是第一个选项,否则它将无效!如果你想检查使用哪个选项,你可以给出
--print-defaults选项作为第一个选项。
如果你想要强制使用一个特定配置文件,你可以使用选项
--defaults-file=full-path-to-default-file。如果你这样做,只有指定的文件将被读取。
开发者注意:选项文件的处理简单地通过处理所有在任何命令行前参数的匹配选项来实现(即,在适当的组里的选项),这对使用多次指定的一个选项的最后实例的程序工作的很好。如果你有这样一个处理多重指定选项但不读选项文件的旧程序, 你只需要增加2行给与它那种能力。检查任何标准的MySQL客户的源代码看怎样做。
http://blog.csdn.net/dwl777/article/details/756974
相关文章推荐
- MySQL中文参考手册之my.conf
- 中文参考手册3(MySQL邮件列表及如何提问或报告错误)
- 中文参考手册5(安装MySQL上)
- 中文参考手册---16MySQL对ODBC的支持
- 中文参考手册---21怎样对比MySQL与其他
- MySQL中文参考手册
- mysql中文参考手册
- MySQL 5.1中文参考手册 - 学习笔记
- MySQL my.cnf 中文参考
- mysql最新版中文参考手册在线浏览
- 中文参考手册6(MySQL与标准的兼容性)对ANSISQL92扩充
- 中文参考手册5(安装MySQL下)
- 中文参考手册---15为MySQL增加新过程
- MySQL 5.1 中文参考手册
- MySQL 4.1.0 中文参考手册 --- 6.9 MySQL 查询缓存
- MySQL中文参考手册--获得数据库和表的信
- MySQL my.cnf 中文参考
- 中文参考手册2(MySQL的一般信息)
- 中文参考手册---14为MySQL增加新函数
- MySQL中文参考手册