ChunBlog.Com

我愿像茶一样 把苦涩留在心里 散发出来的都是清香



Centos7.4 编译安装Mysql 5.7.21 配置开机启动

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.就是下载地址了

1
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.21.tar.gz

二、下载boost

Mysql5.7 要求boost的版本1.59

1
wget --no-check-certificate http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz

三、安装依赖

1
yum install -y cmake bison bison-devel libaio-devel gcc gcc-c++ git  ncurses-devel

四、解压mysql源文件

1
tar -zxvf mysql-5.7.21.tar.gz

五、进入Mysql源文件目录,新建configure做为编译目录,并进入该目录

1
2
3
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 校验字符

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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后,再重新编译

1
rm -rf CMakeCache.txt

如果出现下面的提示就表示成功生成了编译环境

1
2
-- Configuring done
-- Generating done

七、使用make进行编译

1
make && make install

八、初始化数据库

1.新建www用户组

1
groupadd www

2.新建mysql用户

1
useradd -g www mysql -s /sbin/nologin

3.新建数据库文件夹、日志文件夹、配置文件文件夹,并更改用户为mysql

1
2
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.创建配置文件

1
vim /data/apps/conf/mysql/etc/my.cnf

加入以下内容

1
2
3
4
5
6
[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环境变量

1
2
3
4
5
6
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.初始化数据库

1
/data/apps/mysql/bin  --initialize --user=mysql

九、复制启动脚本 配置开机启动

1.复制启动脚本

1
cp /data/apps/mysql/support-files/mysql.server /etc/init.d/mysql

2.修改脚本

1
vim /etc/init.d/mysql

找到以下两行

1
2
basedir=
datadir=

改为

1
2
basedir=/data/apps/mysql/
datadir=/data/apps/mysql/data

3.给脚本可执行权限

1
chmod +x /etc/init.d/mysql

4.启动Mysql数据库

1
systemctl start mysql

5.设为开机启动

1
systemctl enable mysql

十、修改Mysql 初始密码

1.获取初始密码

1
2
cat /root/.mysql_secret
!n1,lI1og4Sy

2.使用初始密码登陆Mysql

1
mysql -uroot -p

3.修改root密码

1
mysql> alter user 'root'@'localhost' identified by '密码';

4.重启Mysql

1
systemctl restart mysql

Mysql启动、停止、重启命令

1
2
3
4
5
6
#启动
systemctl start mysql
#停止
systemctl stop mysql
#重启
systemctl restart mysql


作者  :  耿保春

相识是一种美,人海茫茫遇见你!



文章评论

发表留言

About ME

about me

春风

我愿像茶一样,把苦涩留在心里,散发出来的都是清香

Contact ME