使用软件 cmake-2.8.6.tar.gz mysql-5.6.36.tar.gz
安装光盘自带的ncurses-devel包 —mysql需要此功能支持
[root@localhost ~]# rpm -ivh /media/cdrom/Packages/ncurses-devel-5.9-13.20130511.el7.x86_64.rpm注意: Linux软件编译安装都需要依赖两个安装包 gcc gcc-c++ make 可使用 yum -y install gcc gcc-c++ make 在线安装
将准备好的cmake包解压
[root@localhost ~]# tar zxf cmake-2.8.6.tar.gz [root@localhost ~]# cd cmake-2.8.6 [root@localhost cmake-2.8.6]#编译安装cmake
[root@localhost cmake-2.8.6]# ./configure [root@localhost cmake-2.8.6]# make && make install 如果此步出现报错,有可能是没有编译环境 yum -y install gcc-c++ 输入此命令再试一次为了加强数据库管理,使用专用用户来管理,创建mysql用户和mysql组
[root@localhost cmake-2.8.6]# groupadd mysql [root@localhost cmake-2.8.6]# useradd -M -s /sbin/nologin -g mysql mysql解压mysql包,用cmake生成脚本文件
[root@localhost ~]# tar zxvf mysql-5.6.36.tar.gz -C /usr/src/ [root@localhost ~]# cd /usr/src/mysql-5.6.36/ [root@localhost mysql-5.6.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc 注释:指定数据库安装目录 -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 初始化文件参数目录 -DSYSCONFDIR=/etc 默认字符集编码 -DDEFAULT_CHARSET=utf8 字符集校对规则-DDEFAULT_COLLATION=utf8_general_ci 其他字符集编码(网站平台可能会有多种字符集的网页,因此数据库也要支持多种字符集)-DWITH_EXTRA_CHARSETS=all*编译和安装 [root@localhost mysql-5.6.36]# make [root@localhost mysql-5.6.36]# make install
替换/etc/my.cnf (因为centos7.4默认支持MariaDB数据库,因此系统默认的/etc/my.cnf配置文件是mariadb的配置文件)
为了正常使用数据库,以mysql用户执行初始化脚本,指定数据存放目录等
[root@localhost mysql-5.6.36]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/如若初始化失败,试试安装 yum-y install autoconf
设置全局环境变量—支持数据库命令在所有目录中使用
[root@localhost mysql-5.6.36]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile [root@localhost mysql-5.6.36]# source /etc/profile将MySQL添加为系统服务
[root@localhost mysql-5.6.36]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld [root@localhost mysql-5.6.36]# chmod +x /etc/rc.d/init.d/mysqld [root@localhost mysql-5.6.36]# chkconfig --add mysqld启动MySQL服务,并查看运行状态
[root@localhost mysql-5.6.36]# systemctl start mysqld [root@localhost mysql-5.6.36]# netstat -anput | grep 3306