1、安装

本人使用的是CentOS 7 ,默认yum安装,但默认yum安装版本有点低,可根据需要选择升级,我这里选择先升级再安装。

更新yum

//更新yum包
yum -y update

配置yum源

vim /etc/yum.repos.d/MariaDB.repo

打开的文本中输入以下内容:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/rhel7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

目前的稳定版本为10.1,再安装的时候可去这里查询https://downloads.mariadb.org/mariadb/repositories/#mirror=tuna&distro=CentOS&distro_release=centos7-amd64--centos7

保存并退出,执行安装命令:

//使用配置的yum安装
yum install MariaDB-server -y

如果使用系统自带yum安装,请执行以下命令:

//安装server
yum install mariadb-server mariadb -y

注意:这里我仅安装Server,暂不安装Client,如果有需要安,可以执行以下命令:

//配置yum源安装
yum -y install MariaDB-server MariaDB-client //使用默认安装
yum -y install mariadb*

2、服务

安装完成后,我们需要执行以下命令:  

//启动服务
systemctl start mariadb
//开机启动
systemctl enable mariadb //运行状态
systemctl status mariadb

3、配置

现在我们需要进行一些基本的安全设置。执行命令:

mysql_secure_installation

执行上边的命令,进入设置引导

//1、确认密码
Enter current password for root (enter for none): //直接回车
//2、设置新密码
Set root password? [Y/n] y
//3、移出匿名用户
Remove anonymous users? [Y/n] y
//4、禁用远程登陆
Disallow root login remotely? [Y/n] y
//5、移出测试数据库
Remove test database and access to it? [Y/n] y
//6、重新加载权限
Reload privilege tables now? [Y/n] y Thanks for using MariaDB!
结束

中文乱码配置:

//打开配置
vim /etc/my.cnf

在结尾处追加以下命令:

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
character-set-server=utf8

  重启服务:

systemctl restart mariadb

  登录查看效果:

//登录
mysql -u root -p
//查看当前数据默认字符集
show variables like "%character%";
show variables like "%collation%";

4、用户及权限

//查看版本
mysql -V
//登录
mysql -u root -p //重启
systemctl restart mariadb
//停止
systemctl stop mariadb.service

  

//创建用户
CREATE USER 'testuser'@'%' IDENTIFIED BY '123456';
//用户授权
GRANT select,insert ON test.* TO 'testuser'@'%';
//创建用户并授权
GRANT select ON test.* TO 'testuser'@'%' IDENTIFIED BY '123456';
//ALL PRIVILEGES 表示所有权限
GRANT ALL PRIVILEGES ON test.* TO 'testuser'@'%' IDENTIFIED BY '0123456789' WITH GRANT OPTION;
//回收权限
REVOKE select ON test.* From 'testuser'@'%';
//删除用户
DROP USER 'testuser'@'%';
//查看用户权限
SHOW GRANTS FOR testuser; //查看用户授权表
select * from mysql.user //修改密码
UPDATE mysql.user SET password=password("0123456789") WHERE user='testuser'; //刷新
FLUSH PRIVILEGES;

  

  说明:

用户账号:'username'@'host'
禁止检查主机名:在my.cnf配置文件中的[mysqld]段添加skip_name_resolve = ON 一般都得添加此选项以提升性能
创建用户账号:CREATE USER 'username'@'host' [IDENTIFIED BY 'password'];
例如:create user 'testuser'@'192.168.%.%' identified by 'testpass'; 记得刷新用户授权表flush privileges;
删除用户账号:DROP USER 'user'@'host' [, user@host] ...
例如:drop user 'testuser'@'192.168.%.%';

查看用户授权表命令:select * from mysql.user;    

授权:GRANT priv_type,... ON [object_type] db_name.tbl_name TO 'user'@'host' [IDENTIFIED BY 'password'];

例如:grant select,insert on test1.students to 'testuser'@'192.168.%.%';

查看指定用户所获得的授权:SHOW GRANTS FOR CURRENT_USER;

回收权限:REVOKE priv_type, ... ON db_name.tbl_name FROM 'user'@'host';

例如:revoke insert on test1.students from 'testuser'@'192.168.%.%';

注意:MariaDB服务进程启动时,会读取mysql库的所有授权表至内存中

  1. GRANT或REVOKE命令等执行的权限操作会保存于表中,MariaDB此时一般会自动重读授权表,权限修改会立即生效
  2. 其它方式实现的权限修改,要想生效,必须手动运行FLUSH PRIVILEGES命令  

5、其它

升级说明:

如果你之前已进行过安装,想要进行升级,可先进行卸载,再重复上述步骤安装,注意数据库的备份。

//停止服务
systemctl stop mariadb
//移除包
yum remove mariadb-server mariadb mariadb-libs
//清理
yum clean all

  常用操作:

//使用数据库
use database;
//查看所有数据库
show databases;
//删除名字为dbname的数据库
drop database dbname;

 设置远程登陆:

//打开配置
vim /etc/my.cnf //设置以下节点
[mysqld]
port=25513 //重启
systemctl restart mariadb
//设置防火墙
firewall-cmd --zone=public --add-port=3306/tcp --permanent
//加载设置
firewall-cmd --reload

  

   

参考文献:http://www.cnblogs.com/linuxboke/p/5528209.html

文章出处:http://www.cnblogs.com/anech/p/6844849.html

Mysql MariaDB安装的更多相关文章

  1. mysql(mariadb)安装

    mysql(mariadb)安装 前言 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可. 开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将My ...

  2. centos7 Mycat/MySQL/MariaDB安装部署

    使用yum安装MySQL详细步骤 安装mysql源 centos系统中不包含mysql的源,需要先安装mysql源 1.官网下载源.使用图形界面操作系统进入mysql官网,进入以下界面. 2.在Cen ...

  3. 在CentOS 7 MySQL / MariaDB

    在CentOS7中,MariaDB  替代了MySQL;更多复杂的疑问可以在这里查看 MariaDB versus MySQL – Compatibility Install MySQL / Mari ...

  4. Linux - centos7 下 MySQL(mariadb) 和 主从复制

    目录 Linux - centos7 下 MySQL(mariadb) 和 主从复制 MySQL(mariadb) 安装MySQL(mariadb) 配置数据库的中文支持 在远程用 mysql客户端去 ...

  5. CentOS 7 x64下Apache+MySQL(Mariadb)+PHP56的安装

    每次搭建新服务器,都要来来回回把这些包再装一下,来来回回搞了不下20遍了吧,原来都是凭经验,配置过程中重复入坑是难免的,故写此文做个备忘.虽然有像xampp这样的集成包,但是在生产环境的Linux发行 ...

  6. centos 7 卸载 mariadb 安装mysql

    1,卸载mariadbsystemctl stop mariadbrpm -qa | grep mariadbrpm -e --nodeps mariadb-5.5.52-1.el7.x86_64rp ...

  7. mysql、mariadb安装和多实例配置

    本文目录:1. mysql单实例安装 1.1 rpm安装mysql 1.2 通用二进制包安装mysql 1.2.1 初始化数据库 1.2.2 安装后的规范化操作 1.3 编译安装 1.3.1 编译安装 ...

  8. 记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb

    记录CentOS 7.4 上安装MySQL&MariaDB&Redis&Mongodb 前段时间我个人Google服务器意外不能用,并且我犯了一件很低级的错误,直接在gcp讲服 ...

  9. Linux 安装mysql mariadb配置

    CentOS 7.0 使用 yum 安装 MariaDB 与 MariaDB 的简单配置 1.安装MariaDB 安装命令 yum -y install mariadb mariadb-server ...

随机推荐

  1. where both the key and the value are strings

    Environment Variables (The Java™ Tutorials > Essential Classes > The Platform Environment) htt ...

  2. [LeetCode] 7.Reverse Integer - Swift

    Reverse digits of an integer. Example1: x = , return Example2: x = -, return - 题目意思:对一个整型进行反转 实现代码: ...

  3. linux知识体系

    0. Linux简介与厂商版本 1. Linux开机启动 2. Linux文件管理 3. Linux的架构 4. Linux命令行与命令 5. Linux文件管理相关命令 6. Linux文本流 7. ...

  4. Mysql-xtrabackup 与MySQL5.7 binlog 实现数据即时点恢复

    Mysql-xtrabackup 与MySQL5.7 binlog  实现数据即时点恢复 一.数据库准备 1. rpm -e mariadb-libs postfix tar xf mysql-5.7 ...

  5. oracle的字符集设置与乱码

    oracle的字符集设置与乱码 字符集问题一直叫人头疼,究其原因还是不能完全明白其运作原理. 在整个运行环节中,字符集在3个环节中发挥作用: 1.软件在操作系统上运作时的对用户的显示,此时采用操作系统 ...

  6. Xcode插件开发案例教程

    引言 在平时开发过程中我们使用了很多的Xcode插件,虽然官方对于插件制作没有提供任何支持,但是加载三方的插件,默认还是被允许的.第三方的插件,存放在 ~/Library/Application Su ...

  7. vue Element-ui 表格自带筛选框自定义高度

    el-table中可以在一行的某列进行筛选,代码如下: <el-table-column prop="classOfTest" class="test" ...

  8. Java基础知识陷阱(二)

    本文发表于本人博客. 上次说了一些关于字符串的知识,都是比较基础的,那这次也说下关于对象地址问题,比如传参.先看下面代码: public void changeInt(int a){ a = ; } ...

  9. CGlib和JDK动态代理

    一.CGlib动态代理     JDK实现动态代理需要实现类通过接口定义业务方法,对于没有接口的类,如何实现动态代理呢,这就需要CGLib了.CGLib采用了非常底层的1:字节码技术,其原理是通过字节 ...

  10. vue简单demo

    为了学习基础语法,我并没有用vue-cli脚手架来vue init [基于什么类型]  [项目名称]初始化项目,而是直接<script>../vue.js</script> & ...