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

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

最新文章

  1. QunInfo群数据库的还原与优化
  2. js代码实现下拉菜单
  3. 一:验证微信的Token
  4. 第 17 章 CSS 边框与背景[上]
  5. awk操作数组注意几点
  6. MySQL基础二
  7. 转 -- Linux系列:Ubuntu虚拟机设置固定IP上网(配置IP、网关、DNS、防止resolv.conf被重写)
  8. 在Hyper-V的虚拟机中使用无线网络
  9. XML学习笔记(2)--dom4j操作XML
  10. 使用EntityFramework连接 Mysql
  11. 一些.net开源项目
  12. www.nt-kaisheng.com
  13. Linux下NC反弹shell命令
  14. LINUX 笔记-重定向 :&lt;,&lt;&lt;,&gt;,&gt;&gt;
  15. Win10安装LoadRunner11
  16. spring boot零碎知识点待补充
  17. Java编程基础篇第六章
  18. C#编程(六十八)----------LINQ小结
  19. 图解Ajax工作原理
  20. pip安装包

热门文章

  1. 符合BME风格的弹窗\菜单\表格\文件上传控件
  2. MySQL 使用 比较函数 INTERVAL() 函数 实现数据按区间分组
  3. php-fpm用socket连接
  4. discuz论坛模板文件目录
  5. mock异常
  6. 使用httpClient发送get\post请求
  7. HDU高精度总结(java大数类)
  8. linux无密登录
  9. jq和thinkphp经常使用的几种ajax
  10. asp.net *.ashx类型的文件使用说明