总的配置:
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> gunzip < mysql-VERSION. | tar -xvf -
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql
shell> make
shell> make install
shell> cp support-files/my-mediumf /etc/myf
shell> cd /usr/local/mysql
shell> bin/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql var
shell> chgrp -R mysql .
shell> bin/mysqld_safe --user=mysql &
详细解释:
1. 为mysqld增加一个登录用户和组:
2. shell> groupadd mysql
3. shell> useradd -g mysql mysql
这些命令将增加MySQL组和 MySQL用户。不同版本的Unix中,useradd 和groupadd的语法可能会稍有不同。还可以称为adduser和addgroup。
你可能会将这些用户和组命名为mysql之外的名称。如果是这样,在下面的步骤中替换为相
应的名称。
4. 挑选一个你想解开分发包的目录,进入该目录。
5. 从download.softagency/MySQL/Downloads/MySQL-5.0/中列出的站点之一获得一个分发文件。
6. 在当前目录下解包分发版:
7. shell> gunzip < /path/to/mysql-VERSION. | tar xvf -
该命令创建mysql-VERSION 目录。
使用GNU tar,则不再需要gunzip。你可以用下面的命令来解包和提取分发:
shell> tar zxvf /path/to/mysql-VERSION-OS.
8. 进入解包分发版的顶级目录:
9. shell> cd mysql-VERSION
请注意目前必须从顶级目录配置和构建MySQL。你不能在其它目录中构建。
10.配置发布版并且编译:
11. shell> ./configure --prefix=/usr/local/mysql
12. shell> make
当你运行configure时,你可能想要指定一些选项,运行./configure --help得到一个选项列表。
注:configure脚本给你一个很大的控制权来控制如何配置MySQL源码分发版。一般使用configure命令行的选项来进行。你也可以用某些环境变量作用于configure。
∙ 如果只编译MySQL客户端库和客户端程序而不是服务器,使用--without-server选项:
∙ shell> ./configure --without-server
环境变量:
变量 | 描述 |
CXX | C++编译器的名称(用于运行configure) |
CC | mysql下载add produceC编译器的名称(用于运行configure) |
CFLAGS | C编译器的标志(用于运行configure) |
CXXFLAGS | C++编译器的标志(用于运行configure) |
DBI_USER | Perl DBI的默认用户名 |
DBI_TRACE | 用于Perl DBI的跟踪选项 |
HOME | mysql历史文件的默认路径是$HOME/.mysql_history。 |
LD_RUN_PATH | 用于指定libmysqlclient.so的位置。 |
MYSQL_DEBUG | 调试时的调试跟踪选项。 |
MYSQL_HISTFILE | mysql历史文件的路径。如果设置了该变量,它的值将覆盖$HOME/.mysql_history的默认值。 |
MYSQL_HOST | mysql命令行客户端使用的默认主机名。 |
MYSQL_PS1 | 在mysql命令行客户端中使用的命令提示。 |
MYSQL_PWD | 连接到mysqld时的默认密码。注意,使用它并不安全。。 |
MYSQL_TCP_PORT | 默认的TCP/IP端口号 |
MYSQL_UNIX_PORT | 默认的Unix套接字文件名,用于连接到本地主机。 |
PATH | 由shell使用以到MySQL程序。 |
TMPDIR | 创建临时文件的目录。 |
TZ | 用于设置当地时区。请参见A.4.6节,“时区问题”。 |
UMASK_DIR | 创建目录时的用户目录创建掩码。注意,这是带有UMASK的ANDed。 |
UMASK | 创建文件时的用户文件创建掩码。 |
USER | 在Windows和NetWare上连接到mysqld时使用的默认用户名。 |
如果configure失败,你将向MySQL邮件目录发送包含你认为能帮你解决该问题的包含“config.log”中所有行的邮件,也要包括configure的最后几行输出。用mysqlbug脚本邮寄错误报告。
13.安装分发版:
14. shell> make install
如果你想要设置一个选项文件,使用support-files目录中的一个作为模板。例如:
shell> cp support-files/my-mediumf /etc/myf
可能你需要用root用户运行这些命令。
如果想要配置为支持InnoDB表,应当编辑/etc/myf文件,去掉innodb_...开始选项行前面的#符,并将选项值改为你想要的和15.2.3节,“InnoDB配置”。
选项文件的使用:
MySQL程序可以从选项文件(有时也称为配置文件)读取启动选项。选项文件提供了一种很方便的方式来指定常用的选项,因此不需要每次运行程序时从命令行输入。
下面的程序支持选项文件:myisamchk、myisampack、mysql、mysql.server、mysqladmin、mysqlbinlog、mysqlcc、mysqlcheck、mysqld_safe、mysqldump、mysqld、mysqlhotcopy、mysqlimport和mysqlshow。
在Windows中,MySQL程序从以下文件读取启动选项:
文件名 | 目的 |
WINDIR\my.ini | 全局选项 |
C:\myf | 全局选项 |
INSTALLDIR\my.ini | 全局选项 |
defaults-extra-file | 用--defaults-extra-file=path指定的文件,如果有 |
WINDIR表示Windows目录的位置。通常为C:\WINDOWS或C:\WINNT。你可以使用下面的命令通过环境变量WINDIR的值确定其确切位置:
C:\> echo %WINDIR%
INSTALLDIR表示MySQL的安装目录。一般为C:\PROGRAMDIR\MySQL\MySQL 5.1 Server,其中PROGRAMDIR表示程序目录(通常为Windows英文版的Program Files),MySQL 5.1的安装是根据安装和配置向导完成的。
在Unix中,MySQL程序从下面的文件读取启动选项:
文件名 | 目的 |
/etc/myf | 全局选项 |
$MYSQL_HOME/myf | 服务器相关选项 |
defaults-extra-file | 用--defaults-extra-file=path指定的文件,如果有 |
~/.myf | 用户相关选项 |
MYSQL_HOME是一个环境变量,包含服务器相关的myf文件驻留的目录路径。
如果未设置MYSQL_HOME,并且DATADIR中有一个myf文件,BASEDIR中没有myf文件,mysqld_safe将MYSQL_HOME设置为DATADIR。否则,如果未设置MYSQL_HOME并且在DATADIR中没有myf,则mysqld_safe将MYSQL_HOME设置为BASEDIR。
典型情况二进制安装的目录为/usr/local/mysql/data或源代码安装的目录为/usr/local/var。请注意这是配置时指定的数据目录的位置,而不是 mysqld启动时用--datadir指定的。运行时使用--datadir对寻选项文件的服务器没有效果,因为服务器在处理命令行参量之前寻这些选项。
MySQL按照上述顺序寻选项文件,并读存在的选项文件。如果你想要使用的某个选项文件不存在,则用明文文本编辑器创建。如果存在多个选项文件,文件中指定的后读取的选项要优先文件中指定的先读取的选项。
注释:在Unix平台上,MySQL忽略人人可写的配置文件。这是故意的,是一个安全措施。
任何可以在运行MySQL程序时在命令行给出的长选项也可以在选项文件中给出。要想列出程序的适用选项,用--help选项运行程序。
在选项文件中指定选项的语法类似于命令行语法,例外的是要忽略掉两个破折号。例如,命令行中的--quick或--host=localhost在选项文件中应指定为quick或host=localhost。要想在选项文件中指定--loose-opt_name形式的选项,应写为loose-opt_name。
选项文件中的空行被忽略掉。非空行可以采用下面任何形式:
· #注释,;注释
注释行以‘#’或‘;’开头。‘#’注释也可以从行的中部开始。
· [group]
group是你想要设置选项的程序名或组名。在组行后面,任何opt_name或set-variable行适用于组名,直到选项文件结尾或给出其它组行。
· opt_name
等价于命令行中的--opt_name。
· opt_name=value
等价于命令行中的--opt_name=value。在选项文件中,‘=’字符附近可以有空格,而在命令行中是不允许的。你可以用单引号或双引号来引用值。如果值包含一个‘#’注释字符或空格时很有用。
选项名和值前后的空白将自动删除掉。你可以在选项值中使用转义序列‘\b’、‘\t’、‘\n’、‘\r’、‘\\’以及‘\s’来表示退格、tab、换行符、回车以及空格字符。
在Windows中,如果某个选项值表示一个路径名,应使用‘/’而不是‘\’作为路径名间隔符来指定值。如果使用‘\’,必须用双斜线‘\\’,因为‘\’在MySQL中为转义字符。
如果选项组名与程序名相同,则组内的选项专用于该程序。
所有客户程序(但不能被mysqld)读取[client]选项组。这样允许你指定适用于所有客户端的选项。例如,[client]是用于指定连接服务器的 密码的理想的组。(但应确保该选项文件只能
由你自己读写,以便其他人不能发现你的密码)。一定不要随意在[client]组内放置选项,除非它可以被你使用的所有客户程序识别。如果你试图运行程序,如果程序不理解选项则会显示一条错误消息后退出。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论