Fenying

Angus’ Home.


23 Dec 2015

记一次在 CentOS 6.7 上编译 MySQL 5.7.10 的过程

该文章迁移自作者的旧博客站点。
源地址:http://fenying.blog.163.com/blog/static/1020559932015112311345867

记录一次编译 MySQL 5.7.10 的过程。

主机配置:

    CPU: Intel Core i5-3210M 2.50GHz
    RAM: 8GB
    HardDisk: 500GB (7200 RPM)
    OS: MS-Windows 8.1 x64 Pro Update

虚拟机配置:

    Platform: VirtualBox 5.0
    CPU: Dual Core
    RAM: 2GB
    HardDisk: 30GB HDD (System) + 50GB HDD (Data)
    OS: CentOS 6.7 x86_64
    MySQL: 5.7.10

下载 mysql-5.7.10.tar.gz 和 boost_1_59_0.tar.gz。其中 boost_1_59_0 解压到 /usr/local/boost_1_59_0。进入 mysql 源代码目录,执行以下命令安装:

cmake \
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DMYSQL_DATADIR=/www/db/mysql \
    -DDEFAULT_CHARSET=utf8 \
    -DDEFAULT_COLLATION=utf8_general_ci \
    -DWITH_EXTRA_CHARSETS=ALL \
    -DMYSQL_TCP_PORT=3306 \
    -DMYSQL_USER=mysql \
    -DWITH_MYISAM_STORAGE_ENGINE=1 \
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \
    -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
    -DWITH_MEMORY_STORAGE_ENGINE=1 \
    -DWITH_BOOST=/usr/local/boost_1_59_0 \
    -DMYSQL_UNIX_ADDR=/www/sockets/mysql.sock \
    -DSYSCONFDIR=/www/config
make
make install

完成后,接着初始化数据库,用如下命令:

mkdir -p /www/db/mysql
chown mysql:mysql /www/db/mysql
chmod 0770 /www/db/mysql
/usr/local/mysql/bin/mysqld \
    --initialize-insecure \
    --user=mysql \
    --basedir=/usr/local/mysql \
    --datadir=/www/db/mysql

这里注意:我用的是 --initialize-insecure 选项,这个选项在初始化数据库时,将 root 账户的密码设置为空。也可以使用 --initialize 选项,这个选项则会产生一个随机密码,但千万要把它记下来~

好了,将 /usr/local/support-files/mysql.server 复制为 /etc/init.d/mysql 。并启动服务:

service mysql start

下面用客户端链接试试:

/usr/local/mysql/bin/mysql -uroot -p

成功~

参考文献:

该文章根据 CC-BY-4.0 协议发表,转载请遵循该协议。
本文地址:https://fenying.net/post/2015/12/23/compile-mysql-5.7.10-in-centos-6.7/

comments powered by Disqus