centos 7.4 上源码安装 mysql 数据库

实验: centos 7.4 上源码安装 mysql 数据库
  检查相应的坏境
查看下防火墙iptables和selinux 是否关闭,没关闭先关闭。
再查看下原来主机上是否已有 mariadb 数据库,如果有先卸载在进行安装。
  装包
yum install bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel gcc gcc-c++ cmake libevent-devel gnutls-devel libaio-devel openssl-
devel ncurses-devel libxml2-devel
创建用户
useradd -r -s /sbin/nologin mysql
接下来解压缩
tar xvf mariadb-10.2.15.tar.gz
创建目录,指定用户数据存放的数据库
mkdir /data/mysqldb -pv
然后给设置权限
chown mysql.mysql /data/mysqldb
接下来对源码进行编译
cd 进入 mariadb-10.2.15 目录下,进行编译
cmake . \
-DCMAKE_INSTALL_PREFIX=/app/mysql \
-DMYSQL_DATADIR=/data/mysqldb/ \
-DSYSCONFDIR=/etc \
-DMYSQL_USER=mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITHOUT_MROONGA_STORAGE_ENGINE=1 \
-DWITH_DEBUG=0 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
然后 用命令 make -j 4 && make install
接下来准备一些变量,因为在这个目录下,存放着一些主程序工具,为方便实用,放进 PATH 变量里。
echo PATH=/app/mysql/bin:$PATH > /etc/profile.d/mysql.sh
生效一下: . /etc/profile.d/mysql.sh
接下来我们还要在用户数据库 /data/mysqldb 中生成一些系统数据库,要用一个脚本来生成。
执行这个脚本时,一定要 cd 进入到 /app/mysql/ 目录下
scripts/mysql_install_db –datadir=/data/mysqldb –user=mysql –basedir=/app/mysql
执行完后发现ok就表示成功
下来修改配置文件,来告诉二进制程序用户存放数据的数据库路径,mysql 数据库的主配置文件在 /etc/my.cnf
修改数据库要参照 mysql/support-files/ 这个目录下的一些配置文件,根据生产需求拷贝想用的文件去覆盖主配置文件。
cp support-files/my-huge.cnf /etc/my.cnf
然后进行修改 vim /etc/my.cnf
在mysqld 语句块中添加路径 datadir =/data/mysqldb
这样配置文件就准备好了
接下来就要准备服务启动脚本
在 /usr/local/mysql/support-files/ 目录下二进制程序已经有了相关的脚本,我们拷贝一份就可以了。
cd /usr/local/mysql/
cp support-files/mysql.server /etc/init.d/mysqld
然后就可以启动了
service mysql start
如果启动不起来,应该是/app/mysql 这个目录权限不够,加上权限就可以了。
setfacl -R -m u:mysql:rwx /app/mysql/
加上权限然后在启动
service mysql start
服务起来就可以连接数据库了。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/100472

赞 (1)
李登峰李登峰
上一篇 2018-06-05 18:33
下一篇 2018-06-05 20:01

相关推荐

  • shell脚本编程基础

    简要概括一点脚本小知识

    Linux笔记 2018-04-14
  • shell编程基础二

    profile bashrc 混合命令行展开

    2018-04-11
  • vim编辑器

    文本编辑器种类: 行编辑器:sed 全屏编辑器:nano,vi vim编辑器 vi文本编辑器 +#打开文件后让光标处于第#行 +/ PATTERN :打开文件后,直接让光标处于第一个被 PATTERN 匹配到的行的 行首 –b file 二进制方式打开文件 –d file1 file2… 比较多个文件 -m file 只读打开文件 三种模式: 命令h,j,k…

    2018-04-06
  • SElinux简介

    本文主要介绍:SELinux概念、配置SELinux、管理文件安全标签、管理端口标签、管理SELinux布尔值开关、管理日志、查看SELinux帮助以及SElinux操作示例(迁移httpd服务默认目录)

    2018-05-17
  • MySQL之存储引擎及索引

    什么是MySQL的存储引擎?MySQL中索引的作用是什么?本节内容将为你解答

    2018-06-11
  • 磁盘及文件系统管理(二)

    简要概括磁盘及文件系统管理

    Linux笔记 2018-05-13