mariadb编译安装流程

1. 编译前准备环境
CentOS7.4
编译安装 mariadb-10.2.12.tar.gz
iptables -vnL #查看防火墙状态
systemctl stop firewall #关闭防火墙
getenforce #查看SELinux状态
setenforce 0 #关闭SELinux
rpm -q mariadb-server #检查mariadb是否安装

2. 安装开发相关包组

    yum groupinstall 'development tools'
    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

3. 创建mysql系统用户

    useradd -r mysql -s /sbin/nologin

4. 解压源码包

    tar xvf  mariadb-10.2.12.tar.gz -C /usr/local/

5. 进入解压包路径

    cd /usr/local/mariadb-10.2.15/

6. 执行cmake make && make install(初始化参数)

    cmake . \
    -DCMAKE_INSTALL_PREFIX=/data/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=/data/mysql/mysql.sock \
    -DDEFAULT_CHARSET=utf8 \
    -DDEFAULT_COLLATION=utf8_general_ci

7. 开始编译安装

    make -j 8 && make install

8. 准备环境变量

    echo 'PATH=/data/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
    source     /etc/profile.d/mysql.sh      #立即生效环境变量

9. 把/data目录下的mysql目录 属主mysql 属组mysql

    chown -R mysql.mysql /data/mysql/   

10. 准备配置文件

    #复制配置文件模板覆盖到配置文件里修改
    cp -a /data/mysql/support-files/my-huge.cnf  /etc/my.cnf
    vim /etc/my.cnf
    socket= /data/mysqldb/mysql.sock        #修改数据指向路径
    datadir=/data/mysqldb                #指定数据库位置

11. 准备启动脚本

扫描二维码关注公众号,回复: 1467272 查看本文章
    cp -a /data/mysql/support-files/mysql.server  /etc/init.d/mysqld
    chmod +x /etc/init.d/mysqld         #以防万一给予启动脚本执行权限

12. 创建数据库库目录

    mkdir /data/mysqldb

13. 初始化数据库

    cd /data/mysql/
    #指定以mysql用户的身份   路径在配置文件指定(数据存放位置)
    scripts/mysql_installl_db --user=mysql   --datadir=/data/mysqldb

14. 添加开机启动

    chkconfig --add mysqld  #添加服务到开启启动项
    chkconfig  mysqld on    #设置开机自动启动
    chkconfig --list mysqld #查看服务是否添加成功

15. 启动服务

    systemctl start mysqld  #开启服务
    ss -tnl   #查看3306是否处于监听状态

16. 编译安装完成

    mysql默认没有密码  记得设置mysql root用户的密码 

17. 运行安全脚本(修改数据库管理员密码)

    mysql
    #查看user表里的用户,密码,主机
    select user,host,password from mysql.user;
    #使用password函数加密口令,然后修改root密码
    update mysql.user set password=password("centos") where user='root';

mariadb编译安装流程

18. 报错解决方案

    提示报错可能是权限不足 用户没有访问数据库存放位置的权限
    两种解决方案 A:修改配置文件的socket路径:直接指向到数据库(注意目录需赋予权限)
     B:修改父级目录执行权限
    例: /data/mysqldb (数据库路径)
    chown mysql.mysql /data

猜你喜欢

转载自blog.51cto.com/13769014/2124885