在centos7上手动安装二进制mariadb

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在centos7上手动安装二进制mariadb相关的知识,希望对你有一定的参考价值。

前言:MariaDB数据库管理系统是mysql的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。

  MariaDB基于事务的Maria存储引擎,替换了MySQLMyISAM存储引擎,它使用了Percona的 XtraDB,InnoDB的变体,分支的开发者希望提供访问即将到来的MySQL 5.4 InnoDB性能。这个版本还包括了 PrimeBase XT (PBXT) 和 FederatedX存储引擎


准备工作:准备二进制安装包,这里我用的是最新的 mariadb-10.2.8-linux-x86_64.tar.gz

(1)useradd -r -m -d /app/dbdata  -s /sbin/nologin  mysql


(2)准备数据目录以/app/dbdata为例,建议使用逻辑卷,数据文件相对比较大。

    chown mysql:mysql /app/dbdata


(3)解压安装包到相应的目录下

    tar xvf mariadb-VERSION-linux-x86_64.tar.gz -C /usr/local

    这里放在/usr/local目录下,是因为在安装包里指定的解压路径就是这里

    cd /usr/local 进入安装包目录下

    ln -sv mariadb-VERSION mysql 创建一个软链接

    或者直接改名字也是可以的 

    mv  mariadb-10.2.8-linux-x86_64  mysql

    注:默认的情况下文件目录的名字叫mysql

    chown -R root:mysql  /usr/local/mysql


(4)准备配置文件配置格式:类ini格式,各程序由单个配置文件提供配[prog_name] 配置文件查找次序:后面覆盖前面的配置文件

    /etc/my.cnf --> /etc/mysql/my.cnf --> --default-extrafile=/PATH/TO/CONF_FILE --> ~/.my.cnf mkdir /etc/mysql/

    注:文件的顺序决定了优先级,文件的生效

    cp  support-files/my-large.cnf  /etc/mysql/my.cnf #这里我们自定义配置文件

    注:support-files 目录里有模板集合,里有支持小型,中型,大型,超大型等数据库配置文件


    /etc/mysql/my.cnf 从上面的模板目录中拷贝出来,然后自定义配置文件

       [mysqld]中添加三个选项: 

       datadir = /app/dbdata 

       innodb_file_per_table = on      innodb 数据库引擎

       skip_name_resolve = on    禁止主机名解析 


(5)创建数据库文件

    cd /usr/local/mysql

    ./scripts/mysql_install_db --datadir=/app/dbdata --user=mysql

    注:执行脚本的时候必须在这个相对的路径下,不然会报错

    例:FATAL ERROR: Could not find ./bin/my_print_defaults

    主要是为了生成数据库相关系统的信息


    注:在最小化安装的时候,有些系统文件是没有的,必须自己手动安装才可能

    例:出错信息:./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

    缺少安装包libaio和libaio-devel

    yum install libaio*   安装一下就可以了


(6)准备日志文件

    cd /var/log/

    mkdir  /var/log/mariadb

    touch  /var/log/mariadb/mariadb.log 

    chown  -R  root:mysql /var/log/mariadb

    chmod  -R  g+w /var/log/mariadb

    注:这时要注意,在mysql组当中必须要有写的权限,不然不能记录日志,启动服务的时候会出错


(7)准备服务脚本,并启动服务 

    cp  ./support-files/mysql.server  /etc/rc.d/init.d/mysqld 

    chkconfig --add  mysqld 

    service  mysqld start 


      export PATH=/usr/local/mysql/bin:$PATH

    注:生成path路径


(8)安全初始化 

    /user/local/mysql/bin/mysql_secure_installation

    注:安全环境修改脚本


以上是关于在centos7上手动安装二进制mariadb的主要内容,如果未能解决你的问题,请参考以下文章

mysql在centos上安装和远程连接

CentOS7 二进制包安装mariadb

CentOS7+Zabbix3.0.3安装

怎样在centos上手动安装配置lnmp环境

腾讯云手动搭建LNMP环境(CentOS 7)

Centos7.3二进制格式安装MariaDB