源码部署安装MySQL

本文介绍在 CentOS 7 系统下源码部署安装 MySQL 的详细过程。包括策划阶段的环境、介质、属组、目录等设置,初始化时清理原有软件、安装依赖包、修改内核参数等,编译安装时解压、编译、安装源码,最后创建实例,成功在指定目录创建三个实例。
一.策划
环境:CentOS 7
 
介质:
操作系统CentOS-7-x86_64-Minimal-1708,内存配置至少2G,建议4核。swap区分配至少5G空间。
源码安装包:mysql-boost-5.7.23.tar,
下载地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.22.tar.gz
创建实例的脚本;后附
 
属组:
软件属于mysql用户组下,mysql用户为拥有者,mysql用户密码为oracle。root用户有所有本地操作权限,root用户密码为oracle。
 
目录:
软件存放目录:/home/mysql/sofeware
软件根目录:/home/mysql/base
实例根目录:/home/mysql/instance
 
目标:
在/home/mysql/instance下,批量创建三个实例:oracle01,oracle02,oracle03,登陆密码为oracle。
 
二.初始化
1,清理系统原有mysql及MariaDB,以防止后台进程的相互干扰,利用rpm指令的配套功能就可以实现。
[root@don ~]# rpm -qa |grep mysql
[root@don ~]# rpm -qa |grep mair
 
使用rpm工具,对返回的结果强制擦除
rpm -e --nodeps [ 返回的结果 ]
 
 
 
2,安装所需的各依赖包
[root@don ~]# yum -y install  gcc gcc-c++  readline-devel  bzip2-devel  rpm-build  kernel-devel libaio libaio-devel  elfutils-libelf-devel nfs-utils compat-libstdc++-33  compat-libcap1  cmake  bison  automake  ncurses-devel  xinetd  openssl-devel  numactl-libs
 
 
 
3修改系统内核参数
 
[root@don ~]# echo '* soft nofile 65535' >> /etc/security/limits.conf 
[root@don ~]# echo '* hard nofile 65535' >> /etc/security/limits.conf 
 
 
 
 
3,创建属组
 
[root@don ~]# groupadd -g 6666 mysql
[root@don ~]# useradd -u 6666 -g mysql mysql
 
 
 
4 创建默认路径
[root@don ~]# su - mysql
[mysql@don ~]$ mkdir -p /home/mysql/sofeware
[mysql@don ~]$ mkdir -p /home/mysql/base
[mysql@don ~]$ mkdir -p /home/mysql/instance
 
 
 
5,将源码安装包mysql-boost-5.7.23.tar扔到/home/mysql/sofeware下
 
[mysql@don sofeware]$ pwd
/home/mysql/sofeware
[mysql@don sofeware]$ ls
mysql-boost-5.7.23.tar.gz
 
 
 
三.编译安装
解压安装包
[mysql@don sofeware]$ tar xvf mysql-boost-5.7.23.tar.gz
**********************************************
[mysql@don sofeware]$ ls
mysql-5.7.23  mysql-boost-5.7.23.tar.gz
[mysql@don sofeware]$ cd mysql-5.7.23
 
切换到root用户
[mysql@don mysql-5.7.23]$ su
密码:
[root@don mysql-5.7.23]#
 
编译源码,进入解压后的文件夹。
 
[root@don mysql-5.7.23]# cmake . -DCMAKE_INSTALL_PREFIX=/home/mysql/base -DENABLED_LOCAL_INFILE=ON  -DDOWNLOAD_BOOST=1 -DWITH_BOOST=./boost/    
 
 
 
DENABLED_LOCAL_INFILE=ON :源码文件保存在当前路径下        
DCMAKE_INSTALL_PREFIX=/home/mysql/base :为源码指定安装目录
  
 
源码安装,设备上的内核数目为4,所以参数配置为-j 4。
[root@don mysql-5.7.23]# make -j 4 && make install 

 

编译安装需要root权限,当编译安装完成后,将软件属组权限还给mysql.
[root@don bin]# chown -R mysql:mysql  /home/mysql/
为方便MySQL其他配套组件使用,建立对应软链接。当提示软连接存在时,则跳过。
 
ln -s /home/mysql/mysql*/bin/mysql  /usr/bin/mysql
ln -s /home/mysql/mysql*/bin/mysqladmin  /usr/bin/mysqladmin
ln -s /home/mysql/mysql*/bin/mysql_config /usr/bin/mysql_config
ln -s /home/mysql/mysql*/lib/libmysqlclient.so.20 /usr/lib64/libmysqlclient.so.20
四.创建实例

将脚本发送到/home/mysql/sofeware路径下。配置initdb.info
[root@don sofeware]# vi initdb.info
IP ******************************************************本机IP 地址
SOFT_DIR ***********************************************软件根目录,本机为/home/mysql/base
INSTANCE_BASE_DIR **************************************实例根目录,自定义
INSTANCE_NAME_PREFIX **********************************实例前缀,自定义
INSTANCE_NAME *****************************************实例名,自定义
INSTANCE_PORT ******************************************实例端口号,建议范围22222-66666
SERVER_ID ***********************************************服务号,实例号后缀号码
ADMIN_USER *********************************************维护账号
ADMIN_PASSWD*******************************************维护密码
 
 
 
 
运行脚本,注意,一定要在MySQL用户下运行。
 
[mysql@don sofeware]$ sh init57_v1.3_20180402.sh
 
 
运行结束后,将在规划中的/home/mysql/instance下创建,三个实例
 
[mysql@don instance]$ ls
db_oracle01  db_oracle02  db_oracle03 
同时,三个实例对应的mysqld服务进程同时存在系统中:
[mysql@don instance]$ ps -ef|grep mysql
安装部署成功

 

转载于:https://www.cnblogs.com/Wardenking/p/9558926.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值