mysql 最新的版本都需要cmake编译安装,估计以后的版本也会采用这种方式,所以特地记录一下安装步骤及过程,以供参考。
注意:此安装是默认centos下已经安装了最新工具包,比如GNU make, GCC, Perl, libncurses5-dev,如果在编译安装过程中发现有缺失的工具包,先yum install 单独下载安装再继续即可。
以下安装中涉及的几点需要提前说明的问题:
1. 所有下载的文件将保存在 /usr/local/src/ 目录下
2. mysql 将以mysql用户运行,而且将加入 service 开机自动运行
3. mysql 将被安装在 /usr/local/mysql/ 目录下
4. mysql 默认安装使用 utf8 字符集
5. mysql 的数据和日志文件保存在 /var/mysql/ 对应目录下
6. mysql 的配置文件保存于/var/mysql/my.cnf
一. Centos 用 wget 下载需要的软件,保存到目录 /usr/local/src/ 下
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.13.tar.gz/from/http://mysql.he.net/
wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
wget http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz
二. 安装 cmake
cd /usr/local/src
tar zxvf cmake-2.8.4.tar.gzcd cmake-2.8.4./bootstrapgmakegmake installcd ../tar zxvf bison-2.5.tar.gzcd bison-2.5./configuremakemake install
cd ../
三. 编译安装 MySQL 5.5.13
/usr/sbin/groupadd mysql/usr/sbin/useradd -g mysql mysqltar xvf mysql-5.5.13.tar.gzcd mysql-5.5.13/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_MEMORY_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DENABLED_LOCAL_INFILE=1 \-DMYSQL_DATADIR=/var/mysql/data \-DMYSQL_USER=mysqlmakemake installchmod +w /usr/local/mysqlchown -R mysql:mysql /usr/local/mysqlln -s /usr/local/mysql/lib/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
mkdir -p /var/mysql/mkdir -p /var/mysql/data/mkdir -p /var/mysql/log/chown -R mysql:mysql /var/mysql/
cd support-files/
cp my-large.cnf /var/mysql/my.cnf
cp mysql.server /etc/init.d/mysqld
四. 配置启动MySQL 5.5.13
1. 若有需要请先修改 mysql 的配置 my.cnf
vi /var/mysql/my.cnf
2. mysql 初始化安装
/usr/local/mysql/scripts/mysql_install_db \--defaults-file=/var/mysql/my.cnf \--basedir=/usr/local/mysql \--datadir=/var/mysql/data \--user=mysql
3. 将 mysql 加入开机启动
chmod +x /etc/init.d/mysqldvi /etc/init.d/mysqld (编辑此文件,查找并修改以下变量内容:)basedir=/usr/local/mysqldatadir=/var/mysql/data
chkconfig --add mysqldchkconfig --level 345 mysqld on 4. 启动 mysql
service mysqld start
原文:
可能遇到的问题:
1. 新版的mysql安装使用的是CMake,今天有位网友说安装时有如下错误:CMake Error: The source directory “*” does not appear to contain CMakeLists.txt. Specify –help for usage, or press the help button on the CMake GUI.
刚开始也一时不解,后来得知是安装版本错了,比如在 http://dev.mysql.com/downloads/mysql/ 下载页面时,我们要选择的是 MySQL Community Server 下的 Source Code,如图:
然后在显示的列表中选择 “Generic Linux mysql-5.5.x.tar.gz” 那个版本的×××。
2. /usr/local/mysql/bin/mysqld: unknown option '--skip-locking'’解决办法
经研究发现,其实是my.cnf搞鬼。MySQL寻找my.cnf有顺序,我们一般指定在my.cnf,但是如果系统中之前有一个存在于/etc/中的my.cnf,删除原先的my.cnf即可。