MYSQL5FromSource
准备工作
下载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
Comments
Leave a comment
Or, take a look at Archives and Categories