您的位置:首页 > 数据库 > MySQL

编译安装mysql 5.6

2017-02-25 02:13 344 查看
1.关闭selinux

vi /etc/selinux/config

修改

SELINUX=disabled

2.重启操作系统

shutdown -h now

3.改防火墙设置,打开 3306 端口:

vi /etc/sysconfig/iptables

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

重启防火墙
service iptables restart

4.新增 mysql 用户组

groupadd mysql

5.新增 mysql 用户,并添加到 mysql 用户组:
useradd -r -g mysql mysql
6.新建 MySQL 执行文件目录(后面会把编译好的 mysql 程序安装到这个目录)

mkdir -p /usr/local/mysql

7.新建 MySQL 数据库数据文件目录:
mkdir -p /home/mysql/data
mkdir -p /home/mysql/logs
mkdir -p /home/mysql/temp

8.增加 PATH 环境变量搜索路径
vi /etc/profile

在 profile 文件末尾增加两行:

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

export PATH

9.保存退出,并使配置生效

source /etc/profile

10.安装编译 MySQL 需要的依赖包:

yum install make cmake gcc gcc-c++ bison bison-devel ncurses ncurses-devel autoconf

automake

11.解压mysql源码包

tar -zxvf mysql-5.6.26.tar.gz

cd mysql-5.6.26

12.执行cmake

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-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_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/home/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306 \
-DENABLE_DOWNLOADS=1

13.执行
make && make install

14.修改 mysql 目录拥有者为 mysql 用户

chown -Rf mysql:mysql /usr/local/mysql

chown -Rf mysql:mysql /home/mysql

15.进入 mysql 执行程序的安装路径

cd /usr/local/mysql

16.执行初始化配置脚本,创建系统自带的数据库和表

scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/data

17.修改my.cnf文件所有者

chown -Rf mysql:mysql /etc/my.cnf

18.按自己所需要修改/etc/my.cnf的配置文件

19.复制服务启动脚本:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

20.启动 MySQL 服务:

service mysql start

21.设置 MySQL 开机自动启动服务

chkconfig mysql on

22.设置 MySQL 数据库 root 用户的本地登录密码

mysqladmin -u root password '123'

23.允许 root 远程登录,设置远程登录密码(生产环境不要开放root远程)

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql