·[TOC]
前言
很快迁移到 mysql 5.6版本。 安装却和之前的方式有些不一样 做下记录。
5.6的源码安装用到的是cmake, 需要事先安装完毕。 中间遇到的依赖问题都可以用 包管理器 search 包
。 然后再安装依赖包。
记录下安装步骤
前期准备
# uname -a
Linux 2.6.32-642.1.1.el6.x86_64 #1 SMP Tue May 31 21:57:07 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
# cat /etc/redhat-release
CentOS release 6.8 (Final)
包下载:
- 官网下载即可
创建mysql用户
# pwd
/home/work/local/A_Environment/mysql-5.6.22
# groupadd mysql
# useradd -r -g mysql mysql
# chown -R mysql .
# chgrp -R mysql .
// 需要注意不能换行, 实在不行贴到文本框再贴出来
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DWITH_DEBUG=0 -DMYSQL_TCP_PORT=3306 -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER-NOTFOUND=gcc -DCMAKE_CXX_COMPILER=g++
环境上需要注意的是:
- centos 中gccc就叫gcc, 但是g++叫gcc-c++.x86_64
- curses 用这个 ncurses-devel.x86_64
安装
编译很简单, 如上准备完毕之后已经有了 Makefile, 只需要 make -j
多线程编译即可.
我在编译的时候因为输出太大量被服务器给关闭链接了。 可以这样:
# pwd
/home/work/local/A_Environment/mysql-5.6.22
# nohup make -j &
不过强烈不建议在自己机器上编译, 因为我编译的时候把机器搞挂了。
make 完毕之后
# pwd
/home/work/local/A_Environment/mysql-5.6.22
# make install
安装文件就跑到 /usr/local/mysql
里面去了。
安装很简单:
// 此处是一个取巧操作。 可以避免很多的麻烦
# ln -s /usr/local/mysql /var/lib/mysql
# cd /usr/local/mysql
# ./scripts/mysql_install_db --user=mysql
// 完毕之后不要忘了权限的更改
# chown -R root:root .
# chown -R mysql:mysql data/
启动以及使用
以mysql用户启动
$ su mysql
$ pwd
/usr/local/mysql
$ sh bin/mysqld_safe &
// 定制服务
$ sudo cp support-files/mysql.server /etc/init.d/mysqld
// 登陆前需要先修改密码
$ mysqladmin –u root password '密码'