Ubuntu14.04 编译安装 MySQL5.6.16
首先准备好材料:
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.16.tar.gz
#下载MySQL5.6.16编译包
安装必备工具
sudo apt-get install make bison g++ build-essential libncurses5-dev cmake ncurses-dev
#设置用户、用户组和目录权限
sudo groupadd mysql
sudo useradd -g mysql mysql -s /bin/false
#创建用户mysql并加入到mysql组,不允许mysql
sudo mkdir –p /usr/local/mysql
#创建Mysql安装目录
sudo mkdir -p /usr/local/mysql/data
sudo mkdir -p /usr/local/mysql/log
sudo chown -R mysql:mysql /usr/local/mysql/data
sudo chown -R mysql:mysql /usr/local/mysql
接下来是编译安装:
sudo tar -zxvf mysql-5.6.16.tar.gz
cd mysql-5.6.16/
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
sudo make -j4
sudo make install
#-j数字 表示以多核心运行
#编译过程时间比较长,请耐心等待
配置开机启动
sudo chmod +w /usr/local/mysql
sudo cp /usr/local/mysql/mysql-5.6.16/support-files/my-default.cnf /etc/my.cnf
sudo cp /usr/local/mysql/mysql-5.6.16/support-files/mysql.server /etc/init.d/mysqld
sudo chmod 755 /etc/init.d/mysqld
#这里注意目录是否正确
常用命令软连接,设置环境变量
sudo ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
初始化数据库
sudo /usr/local/mysql/scripts/mysql_install_db --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
启动数据库
sudo /etc/init.d/mysqld start
错误总结:
- 编译安装完成后无法启动并报错如下

需更改my.cnf配置文件。
vim /usr/local/mysql/my.cnf
添加以下内容并保存
[mysqld]
port=3306
bind-address=127.0.0.1
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
############# default settings ################
# time zone
default-time-zone = system
character-set-server = utf8
default-storage-engine = InnoDB
常规知识总结:
/usr/local/mysql/bin/mysqladmin -u root password ****
#初始化密码
编译参数解读:
CMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql
DEFAULT_CHARSET:指定服务器默认字符集,默认latin1
DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci
ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF
WITH_COMMENT:指定编译备注信息
WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM,MERGE,
MEMBER以及CSV四种引擎默认即被编译至服务器,
不需要特别指定。
WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎
SYSCONFDIR:初始化参数文件目录
MYSQL_DATADIR:数据文件目录
MYSQL_TCP_PORT:服务端口号,默认3306
MYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock

浙公网安备 33010602011771号