Linux下编译安装MySQL5.6

编译安装环境

Linux:CentOS6.6纯净版
MySQL:Community Server 5.6.29

安装前准备

  • 检查是否有自带安装MySQL,如果有进行强制卸载
    [root@test ~]# rpm -qa | grep mysql
    [root@test ~]# rpm -e –nodeps mysql-libs

  • 创建mysql用户和组
    [root@test ~]# groupadd -r mysql
    [root@test ~]# useradd -r -g mysql mysql

  • 安装gcc编译器
    [root@test ~]# yum -y install gcc-c++

  • 下载cmake包并安装cmake
    [root@test ~]# wget -c http://git.typecodes.com/libs/ccpp/cmake-3.2.1.tar.gz
    [root@test ~]# tar -zxvf cmake-3.2.1.tar.gz
    [root@test ~]# cd cmake-3.2.1
    [root@test cmake-3.2.1]# ./configure
    [root@test cmake-3.2.1]# make && make install

  • 安装Ncurses
    [root@test ~]# yum -y install ncurses-devel

  • 下载MySQL安装包
    [root@test ~]# wget -c http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.29.tar.gz
    [root@test ~]# tar -zxvf mysql-5.6.29.tar.gz

编译安装MySQL

  • cmake安装
    [root@test ~]# cd mysql-5.6.29
    [root@test ~]# cmake \
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DMYSQL_DATADIR=/usr/local/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=/var/lib/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
    [root@test mysql-5.6.29]# make && make install

  • 配置权限
    [root@test ~]# chown -R mysql:mysql /usr/local/mysql/

  • 初始化,创建系统自带的数据库和表
    [root@test mysql]# scripts/mysql_install_db –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data –user=mysql

  • 设置脚本服务为mysqld
    [root@test mysql]# cp support-files/mysql.server /etc/init.d/mysqld

  • 启动MySQL、登录
    [root@test ~]# service mysqld start
    [root@test ~]# cp /usr/local/mysql/bin/mysql /usr/local/bin/
    [root@test ~]# mysql -uroot -p
    因为mysql初始密码为空,所以直接回车即可登录

  • 修改root登录密码
    [root@test ~]# mysqladmin -uroot -p password ‘123456’
    输入旧密码登录即可

你可能感兴趣的:(Mysql)