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. super()函数的用法

    http://www.runoob.com/python/python-func-super.html class FooParent(object): def __init__(self): sel ...

  2. Azkaban简介及使用

    一.Azkaban概述 Azkaban是一个分布式工作流管理器,在LinkedIn上实现,以解决Hadoop作业依赖性问题. 我们有需要按顺序运行的工作,从ETL工作到数据分析产品. 特点: 1)给用 ...

  3. 【非root用户】安装【python,pip,package】

    安装python: 下载源码 解压 进入 ./configure --prefix=/path/python3.6 注意一定要设置prefix,否则默认安装到/usr/local make make ...

  4. VC2005 warning C4819 消除方法

    一. Warning C4819:The file contains a character that can ot be represented in the current code page(9 ...

  5. 爬虫之cookiejar模块

    简介 有时候我们需要爬一些需要登录才能进入网页,这个时候就要用到cookie相关的一些模块来操作了 内置的http包里包含了cookie相关的一些模块,通过她们我们可以自动使用cookie Cooki ...

  6. Service Receiver Activity 之间的通信

    一.Activity与Service 1. 通过Intent,例子如下: Intent intent = new Intent(this, Myservice.class); // intent .p ...

  7. SQL Server扩展事件-- 使用system_health默认跟踪会话监控死锁

    SQL Server扩展事件(Extended Events)-- 使用system_health默认跟踪会话监控死锁 转自:http://blog.51cto.com/ultrasql/160037 ...

  8. 为什么使用Sails?

    http://sailsdoc.swift.ren/ 这里有 sails中文文档 http://www.jianshu.com/p/ac2da4142259 前言 入手Node.js半年,从用Expr ...

  9. Flask系列(十)自定义Form组件

    一.wtforms源码流程 1.实例化流程分析 # 源码流程 1. 执行type的 __call__ 方法,读取字段到静态字段 cls._unbound_fields 中: meta类读取到cls._ ...

  10. docker——端口映射与容器互联

    在生产环境中,单个服务往往是独立的,但是服务与服务之间往往是相互依赖的,这样对于容器来说,容器之间就需要相互访问.除了网络访问之外,docker还提供了另外两种方式来满足服务的访问. 一:允许映射容器 ...