MariaDB数据库的几种安装方法

  随着我们进入大数据时代,数据已经被人们称为信息工业的石油,由此可见数据的重要性。在企业中,大部分数据都是通过数据库的方式管理的,例如众所周知的:Oracle、MySQL、SQL Server、DB2、MariaDB等。MySQL是老牌的开源数据库,但Oracle收购了Sun公司以后,MySQL的控制权也就落到了Oracle手里。为此,MySQL的创始人Monty Widenius 重新开发了MariaDB,MariaDB是MySQL的一个分支,其语句和MySQL几乎一样。
  在生产中,稳定压倒一切。因此系统光盘里自带的数据库版本总是偏向于低版本的,如果这时候需要学习一下新版本的新功能、变化,你可以通过一下几种方法来安装新版本的数据库。

一.本地yum安装

yum install mariadb-server

这种方法安装的是系统光盘自带的比较老的版本。

二.官方yum安装

MariaDB官网为我们提供了各种版本的yum源,只要配置一个新的yum站点就可以安装了,而且更好的一点就是,MariaDB官网还为我们提供了相对应系统和cpu架构的yum配置信息,我们只需要找到对应的系统版本和cpu架构,复制到本机yum上就可以了。
yum配置信息地址:
https://downloads.mariadb.org/mariadb/repositories/#mirror=shanghai-university
选择对应的Linux版本类型
MariaDB数据库的几种安装方法
选择系统版本和cpu架构
MariaDB数据库的几种安装方法MariaDB数据库的几种安装方法MariaDB数据库的几种安装方法

复制yum源信息,保证安装主机可以连接互联网

yum install mariadb-server

这里虽然光盘里也还有一个安装包,但系统会默认安装版本高的版本。

三.官方二进制包安装

二进制包是官方已经为我们进行了编译,我们直接下载其二进制包来安装就可以,这样就免去了编译源码的麻烦。
各种版本的下载地址:https://downloads.mariadb.org/mariadb/
MariaDB数据库的几种安装方法
MariaDB数据库的几种安装方法
这里有很多平台和架构,选择的时候一定要看清楚。

下载好二进制包,我把包放到/data目录下

  • (1) 准备用户

        groupadd -r -g 306 mysql
        useradd -r -g 306 -u 306  –d /app/data mysql  /app/data  将来用来放数据,因此建议用单独的逻辑卷,随着数据量的增加,可以扩容
        不建议创建家目录
  • (2) 准备数据目录

        以/app/data为例,建议使用逻辑卷
        chown mysql:mysql /app/data  修改文件夹和文件的权限
  • (3) 准备二进制程序

        tar xf mariadb-VERSION-linux-x86_64.tar.gz -C /usr/local  /usr/local为编译时候指定的路径 
        cd /usr/local;ln -sv mariadb-VERSION mysql   解压后带版本号,创建软连接,便于以后升级
        chown -R root:mysql /usr/local/mysql/   记得修改权限
  • (4) 准备配置文件

        mkdir /etc/mysql/
        cp support-files/my-large.cnf /etc/mysql/my.cnf   复制配置文件
        [mysqld]中添加三个选项:
        datadir = /app/data
        innodb_file_per_table = on  每个表生成一个独立的文件,默认是所有表一个文件,不方便管理。10.2以后的版本默认此项
        skip_name_resolve = on 禁止主机名解析,建议使用
  • (5)创建必要数据库

        cd /usr/local/mysql/
        ./scripts/mysql_install_db --datadir=/app/data --user=mysql    必须在mysql/目录下执行,因为bin文件在此目录下,而不是在scripts下
        此命令默认必须在/usr/local/mysql 执行,script/mysql_install_db --datadir......
  • (6)修改环境变量

        echo PATH=/usr/local/mysql/bin:$PATH >> /etc/profile.d/zhang.s- 
  • (7)准备服务脚本,并启动服务

        cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
        chkconfig --add mysqld
        service mysqld start
  • (8)安全初始化

        /user/local/mysql/bin/mysql_secure_installation 执行此脚本,设置root登录范围,禁止匿名用户登录等。

四.自定义编译源码安装

如果有特殊需求,也可以自己下载源码自行编译安装,×××地址和二进制下载地址一样,其下载选项就在二进制选项上面。

  • (1).安装必要的编译软件包

        yum install bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel gcc gcc-c++ cmake ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel
  • (2).做准备用户和数据目录

        mkdir /data
        useradd –r –s /bin/false –m –d /data/mysqldb/ mysql
        tar xvf mariadb-10.2.15.tar.gz
  • (3).cmake 编译安装:

        cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以进行多次不同的编译,如针对于不同平台编译
        编译选项:https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html
    
        cd mariadb-10.2.15/
        cmake . \
        -DCMAKE_INSTALL_PREFIX=/app/mysql \  指定安装路径
        -DMYSQL_DATADIR=/data/mysql/ \              指定数据存放路径
        -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=/app/mysql/mysql.sock \
        -DDEFAULT_CHARSET=utf8 \
        -DDEFAULT_COLLATION=utf8_general_ci
    
        make && make install 
        提示:如果出错,执行rm -f CMakeCache.txt
  • (4)准备环境变量

        echo 'PATH=/app/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
        . /etc/profile.d/mysql.sh
  • (5). 生成数据库文件

        cd /app/mysql/
        scripts/mysql_install_db --datadir=/data/mysqldb/ --user=mysql
  • (6). 准备配置文件

        cp /app/mysql/support-files/my-huge.cnf /etc/my.cnf
  • (7). 准备启动脚本

        cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld
  • (8). 启动服务

        chkconfig --add mysqld ;service mysqld start

猜你喜欢

转载自blog.51cto.com/8031757/2293916
今日推荐