MYSQL5FromSource

Posted by seobib 2 September,2010 (0)Comment

准备工作
 下载Mysql 5.0源码(不用说了吧)
wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.16.tar.gz/from/http://mysql.localhost.net.ar/
tar xzvf mysql-5.0.16.tar.gz
cd mysql-5.0.16/
 安装必要的包
sudo apt-get install build-essential
 安装开发库
如果不太确定哪一个才是真正需要的,把这几个都安装进去

sudo apt-get install libncurses5 libncurses5-dev
不安这些包,将无法编译mysql服务器

 建立用户和工作组
sudo groupadd mysql
sudo useradd -g mysql mysql
 

 

优化编译n
编译的时候可以针对不同类型的CPU进行参数设置,以提高数据库系统性能,参数设置通过修改CHOST, CFLAGS, CXXFLAGS来实现,如果您不清楚自己的CPU型号,可以选用X86通用设置

attachment:IconsPage/IconWarning3.png 针对某些特殊CPU的参数设置编译没有经过测试,如果它编写成功,就没问题了.如果不行,请选用以下三种方法。

速龙-tbird XP (AMD)
export CHOST="i686-pc-linux-gnu"
export CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer -msse -mmmx  -mfpmath=sse"
export CXXFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer -msse -mmmx  -mfpmath=sse -felide-constructors -fno-exceptions -fno-rtti"
export CXX=gcc
奔腾 4 (英特尔)
export CHOST="i686-pc-linux-gnu"
export CFLAGS="-march=pentium4 -mcpu=pentium4 -O3 -pipe -fomit-frame-pointer -msse -mmmx  -mfpmath=sse"
export CXXFLAGS="-march=pentium4 -mcpu=pentium4 -O3 -pipe -fomit-frame-pointer -msse -mmmx  -mfpmath=sse -felide-constructors -fno-exceptions -fno-rtti"
export CXX=gcc
普通(X86通用)
export CHOST="i686-pc-linux-gnu"
export CFLAGS="-mcpu=i686 -march=i686 -O3 -pipe -fomit-frame-pointer"
export CXX=gcc
如果您想进行一些调试,可以将-fomit-frame-pointer参数略去,如果不是,请将它留在那里,因为这样可以使mysql得到更快的运行速度
 

 

配置
这是一个完整的设置

请在mysql5源码所在的目录里进行配置操作

您可以根据自己的需要增加/删除一些选项,下面这个例子只是默认的安装设置

./configure \
--prefix=/usr/local/mysql \
--with-mysqld-user=mysql \
--without-debug \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--disable-shared \
--localstatedir=/usr/local/mysql/data \
--with-extra-charsets=none \
--enable-assembler \
--with-unix-socket-path=/tmp/mysql.socket
make
sudo make install
这将把mysql安装在/usr/local/mysql目录里,数据文件将保存在/usr/local/mysql/data目录里

[编辑] my.conf 配置文件
将预设的配置复制过来,如果准备构建小型数据库建议使用my-medium.cnf

sudo cp support-files/my-medium.cnf /etc/my.cnf
 

建立GRANT表

您必须建立GRANT表,建立它的办法很简单

sudo /usr/local/mysql/bin/mysql_install_db --user=mysql

[编辑] 更改所有者

sudo chown -R root  /usr/local/mysqlsudo chown -R mysql /usr/local/mysql/varsudo chgrp -R mysql /usr/local/mysql

测试

启动数据库服务器

/usr/local/mysql/bin/mysqld_safe -user=mysql&

为数据库管理员试设密码(该密码仅对数据库有效,不影操作系统的密码设置)

/usr/local/mysql/bin/mysqladmin -u root password new_password

进行登录测试

/usr/local/mysql/bin/mysql

您可以在适当的地方为/usr/local/mysql/bin建立链接,以便于在Shell下通过mysql, mysqldump, mysqladmin及其他一些命令来控制mysql的运行

让mysql随系统自动启动

sudo cp support-files/mysql.server /etc/init.d/mysqlsudo chmod +x /etc/init.d/mysqlsudo update-rc.d mysql defaults

重启之后您可以再检查一遍以确认您的mysql服务器能够正常运行

(应该翻译成:如果以上步骤都没问题,当您重启的时候,mysql应该可以了.)

Related Items

Categories : 网络安全 Tags :
Comments
Leave a comment

Or, take a look at Archives and Categories

Category

Archives