摘要:MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

MariaDB学习资料推荐:

服务器数据库平台架构图 服务器数据库搭建_数据库

 

一、mariadb数据库的安装

服务端:yum install mariadb-server mysql

客户端:yum install  mysql

二、数据库服务相关操作

systemctl start mariadb   //开启数据库服务
systemctl status mariadb  //查看数据库服务的状态
systemctl enable mariadb   //自启动数据库服务

三、数据库的初始化安全操作

mysql_secure_installation     //后面的操作均为“y”,并且设置密码

四、数据库的基础操作

<>-----用来解释说明 ,敲代码时省略  

mysql -u<账户名> -h<服务器的IP地址> -P <端口号> -p   //登陆数据库

create database <数据库名>;     //创建数据库

drop database <数据库名>;      //删除数据库

use <数据库名>;                       //使用数据库

show databases;         //查看数据库

create table <数据表名> (列名称 列类型);   //创建数据表

drop table <数据表名> ;     //删除数据表

insert into <数据表名> values(值,值,值,值,....);    //字符串类型用双引号引用,数字类型不用

show tables;             //查看数据表
desc <数据表名> ;          //查看数据表的概要信息

select * from <数据表名> ;      //查看数据表的详细信息

 

需要了解更多可去菜鸟教程自行学习

五、设置只允许(192.168.1.0/24)访问数据库服务器,修改数据库端口为“8800”,并设置日志文件“/var/log/mariadb/access.log”

iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 3306 -j ACCEPT      //限制只有192.168.1.0/24网段的主机才可以访问数据库服务器
 
vim /etc/my.cnf
 "
 [mysqld]
 datadir=/var/lib/mysql
 socket=/var/lib/mysql/mysql.sock
 # Disabling symbolic-links is recommended to prevent assorted security risks
 symbolic-links=0
 # Settings user and group are ignored when systemd is used.
 # If you need to run mysqld under a different user or group,        
 # customize your systemd unit file for mariadb according to the
 # instructions in http://fedoraproject.org/wiki/Systemd
 log=/var/log/mariadb/access.log    //设置日志文件“/var/log/mariadb/access.log”
 port=8800     //修改数据库端口为“8800“
 [mysqld_safe]
 log-error=/var/log/mariadb/mariadb.log
 pid-file=/var/run/mariadb/mariadb.pid#
 # include all files from the config directory
 #
 !includedir /etc/my.cnf.d
 " 
setenforce 0
 systemctl restart mariadb

六、登陆数据库(服务端)

mysql -uroot -p

七、新建一个数据库“newstaff”,在数据库里面新建一个数据表“stafftable”,并插入内容

create database newstaff;  //新建数据库

show databases;            //查看数据库

服务器数据库平台架构图 服务器数据库搭建_linux_02

 

 

use newstaff;     //选择数据库
 
create table stafftable(
     -> staffID int primary key,
     -> username varchar(20),         //创建数据表
     -> sex char(6),
     -> age int); show tables;             //查看数据表

服务器数据库平台架构图 服务器数据库搭建_服务器_03

 

 

desc stafftable;         //查看数据表的概要信息

 

服务器数据库平台架构图 服务器数据库搭建_linux_04

 

 

insert into stafftable values(1,"Tom","Male",25);
 insert into stafftable values(2,"Mary","Female",30);   //在数据表中插入信息  select * from stafftable;   //查看数据表的详细信息


服务器数据库平台架构图 服务器数据库搭建_服务器数据库平台架构图_05

八、为开发人员创建一个名为“adminDB”的账户,但只允许对newstaff数据库进行操作

create user adminDB identified by '123456';   //创建账户
 select user,host from mysql.user;               //登陆数据库,查看账户

服务器数据库平台架构图 服务器数据库搭建_服务器_06

grant select,insert,update,delete,create,drop on newstaff.* to 'adminDB'@'%';   //账户的权限
 select * from mysql.db;     //查看账户只能对newstaff数据库进行操作

服务器数据库平台架构图 服务器数据库搭建_linux_07

 

这时,在客户端测试就需要注意了!!!登陆数据库在与服务端不同!!!

mysql -uadminDB -h192.168.1.10 -P 8800 -p

 

 

九、编写定时任务,让系统每天凌晨0:00对newstaff数据库自动进行数据备份

mysqldump -uroot -p newstaff > newstaff_backup.sql
 
vim backup.sh
 "
 #!/bin/sh
 time=`date+"("%F")"%R`
 $/usr/local/mysql/bin/mysqldump -uroot -p123456 newstaff|gzip > /root/staffbackup-$time.gz
 " 
crontab -e
 "
 00 00 * * * /root/backup.sh
 ~  
 "

至此,MariaDB数据库服务器基本搭建完成!

本文章只是冰山一角,还有更多功能,老铁们可自行查阅学习。