MariaDB数据库简介

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.

开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险.

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品.

MariaDB数据库安装步骤

1.配置yum源

在RHEL/CentOS和Fedora操作系统中添加MariaDB的YUM配置文件MariaDB.repo文件.

#编辑创建mariadb.repo仓库文件
vi /etc/yum.repos.d/MariaDB.repo

2.添加repo仓库配置

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

3.安装MariaDB

yum install MariaDB-server MariaDB-client -y

4.启动mariadb相关命令

systemctl start mariadb      # 启动MariaDB
systemctl stop mariadb # 停止MariaDB
systemctl restart mariadb # 重启MariaDB
systemctl enable mariadb # 设置开机启动

5.启动后正常使用mariadb

systemctl start mariadb

6.执行命令初始化

mysql_secure_installation











7.修改mysql密码

MariaDB [(none)]> set password = PASSWORD('root123');
Query OK, 0 rows affected (0.00 sec)

8 创建普通用户

# 创建
MariaDB [(none)]> create user apollo@'192.168.142.138' identified by 'apollo';
Query OK, 0 rows affected (0.00 sec)

9 查看所有数据库

MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0.01 sec)

10.使用数据库

MariaDB [(none)]> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed

11.查看所有用户

MariaDB [mysql]> select user,host,password from user;
+--------+-----------------------+-------------------------------------------+
| user | host | password |
+--------+-----------------------+-------------------------------------------+
| root | localhost | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | localhost.localdomain | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | 127.0.0.1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | ::1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| apollo | 192.168.142.138 | *48B9B089F0915B31F706B620D4600E547EA0B760 |
+--------+-----------------------+-------------------------------------------+
5 rows in set (0.00 sec)

12.查看当前用户

MariaDB [mysql]> select user();
+----------------+
| user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)

13.切换普通用户apollo

[root@localhost ~]# mysql -uapollo -p -h192.168.142.138

14.查看数据库信息,发现无法看到完整的数据库列表

MariaDB [(none)]> show databases;

15.MariaDB使用grant命令对账户进行授权

# 对特定数据库中的特定表授权
grant 权限 on 数据库.表名 to 账户@主机名
# 对特定数据库中的所有表给与授权
grant 权限 on 数据库.* to 账户@主机名
# 对所有库中的所有表给与多个授权
grant 权限1,权限2,权限3 on *.* to 账户@主机名
# 对所有库和所有表授权所有权限
grant all privileges on *.* to 账户@主机名

16.退出数据库,使用root登录,开始权限设置

# 授权
MariaDB [(none)]> grant all privileges on *.* to apollo@'192.168.142.138';
Query OK, 0 rows affected (0.00 sec)
# 刷新权限
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

17.移除权限

MariaDB [(none)]> revoke all privileges on *.* from apollo@192.168.142.138;
Query OK, 0 rows affected (0.01 sec)

18.中文编码设置,编辑mysql配置文件/etc/my.cnf,下入以下内容.

[root@localhost ~]# vi /etc/my.cnf
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
log-error=/var/log/mysqld.log
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

19.授权配置

远程连接设置哦设置所有库,所有表的所有权限,赋值权限给所有ip地址的root用户
mysql > grant all privileges on *.* to root@'%' identified by 'password';
#创建用户
mysql > create user 'username'@'%' identified by 'password';
#刷新权限
flush privileges;

20.mysqldump命令用于备份数据库数据

[root@localhost ~]# mysqldump -u root -p --all-databases > /tmp/db.dump

21.进入mariadb数据库,删除一个db

MariaDB [(none)]> drop database db1;

22.进行数据恢复

[root@localhost tmp]# mysql -uroot -p < /tmp/db.dump

本文就到这里,关于主从复制,看下一篇文章吧!

LinuxCentos系统安装Mariadb过程记录的更多相关文章

  1. LinuxCentos系统安装Nginx过程记录

    网站服务 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务就是Web网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web网络服务是一种被动访问的服务程 ...

  2. CentOS 5.5 下安装Countly Web Server过程记录

    CentOS 5.5 下安装Countly Web Server过程记录 1. 系统更新与中文语言包安装 2. 基本环境配置: 2.1. NodeJS安装 依赖项安装 yum -y install g ...

  3. 升级Windows 10 正式版过程记录与经验

    升级Windows 10 正式版过程记录与经验 [多图预警]共50张,约4.6MB 系统概要: 预装Windows 8.1中文版 64位 C盘Users 文件夹已经挪动到D盘,并在原处建立了符号链接. ...

  4. 双系统Ubuntu分区扩容过程记录

    本人电脑上安装了Win10 + Ubuntu 12.04双系统.前段时间因为在Ubuntu上做项目要安装一个比较大的软件,导致Ubuntu根分区的空间不够了.于是,从硬盘又分出来一部分空间,分给Ubu ...

  5. linux-i386(ubuntu)下编译安装gsoap_2.8.17过程记录

    过程记录 :  1.下载gsoap_2.8.17.zip 并 解压 : $unzip gsoap_2.8.17.zip     2.进入解压后的目录gsoap-2.8   3.自动配置编译环境:  $ ...

  6. 【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)

    原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在w ...

  7. 升级到 ExtJS 5的过程记录

    升级到 ExtJS 5的过程记录   最近为公司的一个项目创建了一个 ExtJS 5 的分支,顺便记录一下升级到 ExtJS 5 所遇到的问题以及填掉的坑.由于 Sencha Cmd 的 sencha ...

  8. Ubuntu14.04 Tomcat 安装过程记录

    Ubuntu14.04 Tomcat 安装过程记录 检查java的版本 zhousp@ubuntu:~$ sudo java -version [sudo] password for zhousp: ...

  9. mercurial(Hg) Server 搭建 过程记录

    mercurial(Hg) Server 搭建 过程记录 1.  环境说明 只是测试搭建,环境为本机开发环境:win 8.1 + IIS8.5 软件准备: 2.  软件安装 先安装Python2.7, ...

随机推荐

  1. Log4j介绍,log4j.properties配置详解

    http://www.cnblogs.com/simle/archive/2011/09/29/2195341.html本文主要解释log4j的配置文件各个配置项的含义,内容是从网上转载的 1.Log ...

  2. ios 调试过程捕获异常Stack 信息

    在AppDelegate,定义方法 void catchExceptionHandler(NSException *exception) { NSLog(@"CRASH: %@", ...

  3. 转:介绍一个好用的抓取dump的工具-ProcDump

    介绍一个好用的抓取dump的工具-ProcDump Procdump是一个轻量级的Sysinternal团队开发的命令行工具, 它的主要目的是监控应用程序的CPU异常动向, 并在此异常时生成crash ...

  4. WPF入门教程系列一

    WPF入门教程 一.  前言  公司项目基于WPF开发,最近项目上线有点空闲时间写一篇基于wpf的基础教材,WPF也是近期才接触,学习WPF也是在网上查资料与微软的MSDN进行学习,写本博客的目为了温 ...

  5. mac使用git管理Github

    工欲善其事,必先利其器. 在OS X Yosemite 10.10.3安装最新版本号Xcode.在terminal下能够发现git已经被安装. ~ mesut$ git --version git v ...

  6. 【C语言天天练(二三)】errno变量

    引言: 在C编程中,errno是个必不可少的变量.特别是在网络编程中. 假设你没实用过errno,那仅仅能说明你的程序不够健壮. 为什么会使用errno呢?这是系统库设计中的一个无奈之举.他很多其它的 ...

  7. Atitit. Toast alert loading js控件   atiToast v2新特性

    Atitit. Toast alert loading js控件   atiToast v2新特性 1. 连续多个txt追加的原理 var txt = document.createElement(& ...

  8. jQuery读取json文件

    转 http://www.jb51.net/article/36678.htm 1.userInfo.html <!DOCTYPE html PUBLIC "-//W3C//DTD X ...

  9. c++ 宏 #val 在unicode下的使用。

    #define CHECK(condition) cout<<check failed:<<#condition<<endl; 上面这句宏,当你 CHECK(myf ...

  10. objc_runtime使用方法的几个简单例子(转)

    1. 给NSObject类动态添加属性h定义部分 [cpp] @interface UIWebView (LoadProgress)  @property (nonatomic, assign) NS ...