Centos7.3二进制格式安装MariaDB
背景:
CentOS7开始,数据库使用的是MariaDB数据库,而yum安装的数据库版本比较低,所以学习了在CentOS7.3版本二进制安装MariaDB-10.2.8,在此记录下安装过程,供以后参考。之所以用二进制安装主要是为了省去编译安装的时间,编译安装的时间太长。
MariaDB介绍:
MariaDB是由MysqL转变而来,MysqL在被Oracle收购后没有很好的发展,毕竟Oracle公司有自己的数据库Oracle,所以MysqL之父离开了Oracle公司后自己建立新的公司开发MariaDB,而MariaDB大有取代MysqL的趋势,现在很多大公司都在将数据库转移到MariaDB上。在CentOS7版本更是直接用MariaDB取代了MysqL。
安装步骤:
(1)准备用户
groupadd -r -g 306 MysqL
在创建一个MysqL用户,用户id为306,所属组为306:
useradd -r -g 306 -u 306 �Cm �Cd /app/data MysqL
(2)准备数据库存放路径,这个目录会存放数据库的数据,会越来越大所以建议使用逻辑卷,不过这里我用一个分区下的/app/data目录做数据目录:
chown MysqL:MysqL /app/data 修改目录的所属者和所有组为MysqL
(3)准备二进制程序
二进制程序可以去MariaDB官网下载:https://downloads.mariadb.org/
要注意下载的是二进制安装包,会比源码包大很多,毕竟是以及编译好的文件,还有就是注意Windows和Linux。
下载好后随便放在哪,然后解压缩到/usr/loacl目录下,也可以不解压缩到这个文件,不过你需要去修改很多的配置文件,因为人家默认目录就是这个,这里就最好不要修改了。
MariaDB和MysqL用法是一样的,也是用MysqL命令,所以配置和启动都是和MysqL相关,毕竟实质上他俩是一样的。
tar xvf mariadb-10.2.8-linux-x86_64.tar.gz -C /usr/local/
解压完后:cd /usr/local
创建软连接:ln -sv mariadb-10.2.8-linux-x86_64 MysqL
chown -R root:MysqL /usr/local/MysqL/
(4)准备配置文件
复制配置文件:
cp /usr/loacl/MysqL/support-files/my-large.cnf /etc/MysqL/my.cnf
在[MysqLd]中添加三个选项:
datadir = /app/data 指定数据库存放目录
innodb_file_per_table = on
skip_name_resolve = on 禁止主机名解析
进入到MysqL目录(一定是进入到这个目录,不能在进到下过目录):
cd /usr/local/MysqL/
用它准备的脚本创建数据库文件:
./scripts/MysqL_install_db --datadir=/app/data --user=MysqL
--datadir后接的是存放数据库的目录
--user后接的是用户
(6)准备日志文件
创建日志文件:touch /var/log/MysqLd.log
修改文件所有者:chown MysqL /var/log/MysqLd.log
(7)准备服务脚本,并启动服务
复制MysqL.server到init.d下:
cp ./support-files/MysqL.server /etc/rc.d/init.d/MysqLd
添加服务:chkconfig --add MysqLd
启动服务:systemctl start MysqLd
(8)安全初始化
命令:/user/local/MysqL/bin/MysqL_secure_installatio
作用:设置账户密码和是否允许匿名登录和是否清除空帐号等等
(9)这时MariaDB服务已经开启,用户可以使用MariaDB数据库了,不过为了本机使用方便,我们还需设置PATH变量,否则使用MysqL命令需要写很长的目录
在/etc/profile.d/创建一个脚本MysqLd.sh
命令:vim /etc/profile.d/MysqLd.sh
写入export PATH=/usr/local/MysqL/bin:$PATH
(10)使用MariaDB数据库
-uroot表示登入用户名
-p表示密码,如果没有密码可以不写,有密码可以直接跟在后面,不过不安全