服务器 频道

MySQL数据库服务器的配置

  3.2.1.快速安装:

  其实mysql源码是个非常适合linux初学者安装的数据库,他的快速安装极为简便,在默认情况下mysql是安装在/usr/local/下的,包括他的BIN文件以及数据结构等。

  # tar zxvf tarfile.tar.gz
  # cd mysql_src_dir
  #./configure
  #make
  #make install
  #make clean

  这样的快速安装方法就把mysql安装成系统的默认状态

  3.2.2.配置安装:

  用上述的方法对源码解包后,就可以根据自己的需要利用configure对Mysql进行安装配置了

  1.Configure选项:

  configure脚本给你一个很大的控制权来如何配置你的MySQL。你使用configure命令行的选项进行。你也可以用正确的环境变量作用于configure。对于一个由configure支持的选择列表,运行这个命令:
  #./configure -- help

  一些更常用的configure选项见下面的描述:

  * 只编译MySQL客户库和客户程序而不是服务器,使用--without-server选项:

  # ./configure --without-server

  如果你没有一个 C++ 编译器,mysql将不编译(有一个客户程序需要C++)。在这种情况下,你可以去掉configure里面测试C++编译器的代码,然后运行带有 --without-server选项的./configure。编译步骤步将仍然尝试构造mysql,但是你可以忽略任何关于" mysql.cc "的警告。(如果make停止,试试make -k告诉它即使出错继续剩下的构造步骤)。

  * 如果你不想要位于"/usr/local/var"目录下面的日志(log)文件和数据库,使用类似于下列configure命令的一个:

  * #./configure --prefix=/usr/local/mysql
  * #./configure --prefix=/usr/local --localstatedir=/usr/local/mysql/data

  第一个命令改变安装前缀以便任何东西被安装在"/usr/local/mysql"下面而非缺省的“/usr/local”。第二个命令保留缺省安装前缀,但是覆盖了数据库目录缺省目录(通常是"/usr/local/var")并且把它改/usr/local/mysql/data.

  * 如果你正在使用Linux并且你想要MySQL的套接字位于缺省地点以外的某个地方(通常在目录"/tmp"或"/var/run",使用象这样的configure的命令:

  #./configure --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock

  注意给出的文件必须是一个绝对路径!

  * 如果你想编译静态链接程序运行configure:

  * #./configure --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static

  * 如果你正在使用gcc并且没有安装libg++或libstdc++,你可以告诉configure使用gcc作为C++编译器:

  #CC=gcc CXX=gcc ./configure
  当你使用时gcc作为C++编译器是,它将不试图链接libg++或libstdc++。如果构造失败并且产生有关编译器或链接器的错误,不能创建共享库"libmysqlclient.so.#"("#"是一个版本号), 你可以通过为configure指定--disable-shared选项来解决此问题。在这种情况下,configure将不构造一个共享libmysqlclient.so.#库。

  * 你可以设置MySQL对于非NULL的列不使用DEFAULT列值(即,不允许列是NULL)。这导致INSERT语句产生一个错误,除非你明确地为所有要求非NULL值的列指定值。为了禁止使用缺省值,这样运行configure:
  # CXXFLAGS=-DDONT_USE_DEFAULT_FIELDS ./configure

  * 缺省地,MySQL使用ISO-8859-1(Latin1)字符集。为了改变缺省设置,使用--with-charset选项目:

  #./configure -- with-charset= gb2312
  CHARSET可以是big5、cp1251、cp1257、czech、danish、dec8、dos、euc_kr、gb2312 gbk、german1、hebrew、 hp8、hungarian、koi8_ru、koi8_ukr、latin1、latin2、sjis、swe7、tis620、ujis、usa7、win1251或win1251ukr之一。注意:如果你想要改变字符集,你必须在配置期间做make distclean!如果你想在服务器和客户之间变换字符,你应该看一下SET OPTION CHARACTER SET命令。如果你在创建了任何数据库表之后改变字符集,你将必须对每个表运行myisamchk -r -q,否则你的索引可能不正确地排序。(如果你安装了MySQL,创建一些表,然后重新配置MySQL使用一个不同的字符集并且重新安装它,这时就可能发生这种情况。)

  * 为了配置MySQL带有调试代码,使用--with-debug选项:

  #./configure --with-debug
  这导致包含一个安全的内存分配器,能发现一些错误和并提供关于正在发生的事情的输出。

  2.编译Mysql:

  配置完Mysql就可以进行编译了

  #make

  3.安装Mysql:

  #make install

  这步系统会把mysql安装到指定的位置,我们假设系统把mysql安装到了/usr/local/下,到这就完成了Mysql系统的源码方式配置、编译和安装了。

  3.3.用RPM包进行安装

  除了使用mysql的源码安装外,Mysql还提供了RPM方式的二进制安装法:

  你可能要使用的RPM文件有:

  * MySQL-VERSION.i386.rpm MySQL服务器。除非你只是想要与运行在其他机器上MySQL服务器连接,否则你将需要它。

  * MySQL-client-VERSION.i386.rpm 标准MySQL客户程序。你可能总是需要安装这个包。

  * MySQL-bench-VERSION.i386.rpm 测试和基准程序。需要Perl和msql-mysql-modules RPM。

  * MySQL-devel-VERSION.i386.rpm 所需的库和包含文件。如果你想要编译其他MySQL客户程序, 例如Perl模块。

  * MySQL-VERSION.src.rpm 包含上述所有包的源代码。它也能被用来尝试为其他硬件平台构造RPM。
  查看一个RPM包中的所有文件:

  # rpm -qipl MySQL-VERSION.i386.rpm
  实施一个标准的最小安装,运行这个命令:

  # rpm -i MySQL-VERSION.i386.rpm MySQL-client-VERSION.i386.rpm

  只安装客户包:

  # rpm -i MySQL-client-VERSION.i386.rpm

  RPM将数据放在"/var/lib/mysql"里,RPM也在"/etc/rc.d/"里创建适当的入口以便在引导时自动启动服务器。(这意味着如果你以前已经安装过,在对它改变之前,你可以把你以前安装的MySQL启动文件做个拷贝,因此你不会丢失改动的配置)。

  在安装了RPM文件后,"mysqld"守护程序应该正在运行,并且现在你应该可以开始使用MySQL。

0
相关文章