Ubuntu下编译安装MySQL 5.5.9


MySQL正式发布5.5.9版本,win下有了msi安装包,Ubuntu还在采用保守的5.1版本,官方网站上有rpm和tar.gz的源码版本,至今还没有ubuntu的安装源,本人对rpm不太感冒,所以只能编译源码安装了,参照网上的编译安装选项,试验了几次,终于成功,做个笔记。

5.5.9编译采用cmake,Ubuntu下只要sudo apt-get install cmake就可以,mysql具体编译选项如下(#后面的复制进去即可):

root@ubuntu:~/downloads/mysql-5.5.9# cmake . -DCMAKE_BUILD_TYPE:STRING=Release -

DCMAKE_INSTALL_PREFIX:PATH=/usr/local/mysql -DCOMMUNITY_BUILD:BOOL=ON

-DENABLED_PROFILING:BOOL=ON -DENABLE_DEBUG_SYNC:BOOL=OFF -

DINSTALL_LAYOUT:STRING=STANDALONE -DMYSQL_DATADIR:PATH=/var/run/mysql

-DMYSQL_MAINTAINER_MODE:BOOL=OFF -DWITH_EMBEDDED_SERVER:BOOL=ON -

DWITH_EXTRA_CHARSETS:STRING=all -DWITH_SSL:STRING=bundled -

DWITH_UNIT_TESTS:BOOL=OFF -DWITH_ZLIB:STRING=bundled  -LH

然后就是按照源码包下INSTALL_SOURCE.txt的说明

cd /usr/local/mysql

(进入主程序目录)

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

(复制源码包内的设置文件到/etc/系统统一的设置文件路径,www.bkjia.com这一步一定要做,不然install_db会出错)

sudo ln -s /usr/local/mysql/bin/mysql /usr/bin/

sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin/

sudo ln -s /usr/local/mysql/bin/mysqld_safe /usr/bin/

sudo ln -s /usr/local/mysql/bin/mysql_conf /usr/bin/

sudo ln -s /usr/local/mysql/share/mysql/mysql.server /usr/bin/

(添加执行程序的软链接,这只是为了方便,喜欢用完整路径的可以不做,这一步也可以不用)

sudo groupadd mysql

(创建用户组mysql)

sudo useradd -g mysql mysql

(在用户组mysql下创建用户mysql)

sudo bin/mysql_install_db --user=mysql

(如果还没有安装的MySQL,必须创建MySQL授权表。创建后,需要手动重新启动服务器)

sudo chown -R root .

(使/usr/local/mysql/目录下所有文件为根用户root所有)

sudo chown -R mysql var

(使/usr/local/mysql/var/目录下所有文件为用户mysql所有)

sudo chgrp -R mysql .

(使/usr/local/mysql/目录下所有文件为用户组mysql所有,我觉得用root也可以)

sudo bin/mysql_safe --use=mysql &

(初始化并测试你的mysql,其中&为后台执行的意思)

至此安装完毕,server启动正常。如果没有上面的添加执行程序的软链接,/usr/local/mysql不在PATH路径下,每次都要/usr/local/mysql/bin/mysqld启动,可以将/usr/local/mysql/bin路径添加到PATH,Ubuntu下修改/etc/environment文件,注意书写方式,如果错误ubuntu下次很可能起不来。

二、启动Mysql Server

mysql_config

mysqld_safe --user=mysql &

mysql.server start

设置自启动

1、sudo cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql

2、sudo chmod +x mysql

3、sudo sysv-rc-conf

(运行服务管理工具,没有sysv-rc-conf的可以马上安装一个,sudo apt-get install sysv-rc-conf,关于sysc-rc-conf的使用可以参考<Ubuntu10.10下使用sysv-rc-conf管理服务>)

4、运行sysv-rc-conf后找到mysql,并为它设置一个运行级别,本人设了2345。

添加Mysql用户密码

1、确保Mysql Server已启动

2、mysql -u root -p

3、SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd');

4、SET PASSWORD FOR 'root'@'hostname' = PASSWORD('newpwd');

(hostname是你的主机名,按实际情况而定)

相关内容