Centos7.4 编译安装Mysql 5.7.21数据库,加添服务并 配置开机启动。使用yum安装的Mysql一般版本比较旧,如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进行编译安装了。
一、下载Mysql boost
下载源码
https://dev.mysql.com/downloads/mysql/
1.在Select Operating System:选择Source Code
2.在下面的Select OS Version:选择Generic Linux (Architecture Independent);
3.然后再下面的部分可以看到Compressed TAR Archive,单击后面的Download;
4.在最下面的No thanks, just start my download.就是下载地址了
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.21.tar.gz
二、下载boost
Mysql5.7 要求boost的版本1.59
wget --no-check-certificate http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
三、安装依赖
yum install -y cmake bison bison-devel libaio-devel gcc gcc-c++ git ncurses-devel
四、解压mysql源文件
tar -zxvf mysql-5.7.21.tar.gz
五、进入Mysql源文件目录,新建configure做为编译目录,并进入该目录
cd mysql-5.7.21
mkdir configure
cd configure
六、使用cmake进行生成编译环境
-DCMAKE_INSTALL_PREFIX mysql安装目录
-DMYSQL_DATADIR 数据库文件没有了
-DSYSCONFDIR 配置文件目录(配置文件需要自己创建)
-DMYSQL_UNIX_ADDR sock目录 春风这里使用/dev/shm(物理内存目录)
-DWITH_BOOST= boost源码文件
-DEXTRA_CHARSETS 安装所字符集 可以用all安装所有扩展字符集
-DDEFAULT_CHARSET 使用utf8字符
-DDEFAULT_COLLATION 校验字符
cmake .. -DCMAKE_INSTALL_PREFIX=/data/apps/mysql \
-DMYSQL_DATADIR=/data/apps/mysql/data \
-DSYSCONFDIR=/data/apps/conf/mysql/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/dev/shm/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_DEBUG=0 \
-DMYSQL_MAINTAINER_MODE=1 \
-DWITH_SSL:STRING=bundled \
-DWITH_ZLIB:STRING=bundled \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/root/boost_1_59_0.tar.gz
如果编译出现错误,请先删除CMakeCache.txt后,再重新编译
rm -rf CMakeCache.txt
如果出现下面的提示就表示成功生成了编译环境
-- Configuring done
-- Generating done
七、使用make进行编译
make && make install
八、初始化数据库
1.新建www用户组
groupadd www
2.新建mysql用户
useradd -g www mysql -s /sbin/nologin
3.新建数据库文件夹、日志文件夹、配置文件文件夹,并更改用户为mysql
mkdir -p /data/apps/mysql/data /data/apps/log/mysql /data/apps/conf/mysql/etc
chown -R mysql:www /data/apps/mysql /data/apps/log/mysql /data/apps/conf/mysql
4.创建配置文件
vim /data/apps/conf/mysql/etc/my.cnf
加入以下内容
[mysqld]
port = 3306
socket = /dev/shm/mysql.sock
basedir = /data/apps/mysql
datadir = /data/apps/mysql/data
log_error = /data/apps/log/mysql/error.log
5.配置MySQL环境变量
vim /etc/profile
export PATH=/data/apps/php/bin:/data/apps/php/sbin:$PATH
#改为
export PATH=/data/apps/php/bin:/data/apps/php/sbin:/data/apps/mysql/bin:$PATH
#让变量生效
source /etc/profile
6.初始化数据库
/data/apps/mysql/bin --initialize --user=mysql
九、复制启动脚本 配置开机启动
1.复制启动脚本
cp /data/apps/mysql/support-files/mysql.server /etc/init.d/mysql
2.修改脚本
vim /etc/init.d/mysql
找到以下两行
basedir=
datadir=
改为
basedir=/data/apps/mysql/
datadir=/data/apps/mysql/data
3.给脚本可执行权限
chmod +x /etc/init.d/mysql
4.启动Mysql数据库
systemctl start mysql
5.设为开机启动
systemctl enable mysql
十、修改Mysql 初始密码
1.获取初始密码
cat /root/.mysql_secret
!n1,lI1og4Sy
2.使用初始密码登陆Mysql
mysql -uroot -p
3.修改root密码
mysql> alter user 'root'@'localhost' identified by '密码';
4.重启Mysql
systemctl restart mysql
Mysql启动、停止、重启命令
#启动
systemctl start mysql
#停止
systemctl stop mysql
#重启
systemctl restart mysql