随着我们进入大数据时代,数据已经被人们称为信息工业的石油,由此可见数据的重要性。在企业中,大部分数据都是通过数据库的方式管理的,例如众所周知的: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版本类型
选择系统版本和cpu架构
复制yum源信息,保证安装主机可以连接互联网
yum install mariadb-server
这里虽然光盘里也还有一个安装包,但系统会默认安装版本高的版本。
三.官方二进制包安装
二进制包是官方已经为我们进行了编译,我们直接下载其二进制包来安装就可以,这样就免去了编译源码的麻烦。
各种版本的下载地址:https://downloads.mariadb.org/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