RHCE 学习笔记(36) - MariaDB

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介:

MariaDB 是MySQL的一个分支,从MySQL被甲骨文收购之后才弄出来的替代品,目前全部兼容MySQL。


RHEL7里面对MariaDB的要求不高,普通的管理员不需要有专业DBA的水平,能够掌握常见的SQL命令,可以对用户管理和备份还原数据库进行了。


首先安装MariaDB

wKioL1TLBxjAeALLAAGRal4mPa8938.jpg


打开防火墙服务,开机自动运行

wKiom1TLBjrynRNRAAEZhcREN38562.jpg


可以开始用了,先看看基本的命令操作,SQL操作无非增删改查询,触发器,存储过程等等,RHCE7毕竟不是专门的MariaDB课程,知道最基本的就够了;


wKioL1TLByGSp0UXAACP9Tnuv9Y242.jpg


显示数据库


wKiom1TLBkDCtQ-JAACW3wvd2KY441.jpg


创建数据库


wKioL1TLByXw4w2dAADcxvvAX2E126.jpg


进入数据库

wKiom1TLBkThzICkAAAv1gXSOMg645.jpg


创建一个表,指定主键和各字段的名字类型;

wKioL1TLByqBo6ToAACIG3NSj7g324.jpg


插入数据


wKiom1TLBknzB8V7AACqqbtNtiE572.jpg


查询数据

wKioL1TLBy3jYL_yAACq3f8AStA078.jpg


更新数据


wKiom1TLBk6CmONvAAE486W_GS4568.jpg


复制一张表


wKioL1TLBzWg4K51AAESWaMil-Q782.jpg


更改表的结构,增加一个字段


wKiom1TLBljRi2LLAAFVZ0-Mzi8736.jpg


删除表



wKioL1TLBz_iL9UuAACZKjpT2Bk137.jpg


创建另外一张表,和第一张表绑定主键外键,级联删除


wKiom1TLBl_xwFsiAACMUVRV3tU801.jpg

插入数据


wKioL1TLB0fgs4msAAD9D9lGlmE690.jpg


做个简单的多表查询


wKiom1TLBmjyIQi0AADRae-UHts503.jpg


从主表里面删除一行数据

wKioL1TLB0yB9lrmAABN1XvJZF4160.jpg

确认级联删除有效


wKiom1TLBmuxGjfFAAEDyWdfBFg927.jpg


基本的SQL 命令还有很多,这里就不一一赘述,更多例子可以参考官方的文档

https://mariadb.com/kb/en/mariadb/basic-sql-statements/


下面看看第二个重点,如何对用户进行管理。


MariaDB装好以后,默认登录是没密码的,默认登录用户的root@localhost


wKioL1TLFiyjHWj8AABhvZ6sqAg533.jpg


查看一下mysql数据库里面的user表

wKioL1TLFjPTzid0AAETY8arIaU924.jpg


所有的用户信息都在这个表里

wKiom1TLFVaDV7XbAAD4TDmNJAk654.jpg



首先看看如何修改root用户的密码,有3种方法。


在Shell终端里面,可以用mysqladmin 直接重置密码


wKioL1TLFkXDaJWsAAFRddiGTlo634.jpg


在MariaDB里面,可以使用 set password重置

wKiom1TLFWmjJ-rPAAEQSjd-kaM630.jpg


也可以直接修改表,不过改完之后需要刷新


wKioL1TLFk6TP6-EAACk9w_C4y0153.jpg

wKiom1TLFXHyxmFeAAEQpGD_5Zc825.jpg




如果忘记了root密码怎么办,可以在 /etc/my.cnf文件里面直接添加一行


wKioL1TLFmOS4Mh0AAI2IzE2bP8321.jpg


重启服务之后,就可以直接进入了,这个时候可以通过第三种方式修改表,然后刷新的方式重置密码,然后注释掉之前的skip命令;


wKioL1TLFmyRvjmGAAD3wIIs0G4264.jpg



下面看看如何创建其他用户。 


新建一个tom,指定只能从本机登录,设置密码,以tom登录

wKiom1TLFZHwc3JdAAGXtt2xCJo248.jpg


进来之后没有权限


wKioL1TLFnqgme39AAEZDSe6Kfc874.jpg


查看一下这个用户的权限


wKiom1TLFZzQG6hPAAFReOoFSn8711.jpg


所有的权限类型可以通过show priviledges\G 显示


wKioL1TLFovTtCzjAAJOVhn22aE987.jpg


手动给tom分配一个查询权限

wKiom1TLFauTGPUsAABSYJdEAIk821.jpg


以tom登录,只能查看mydb下面的student表


wKioL1TLFpbzjzKfAAJDw_mPKWs072.jpg


如果要撤销权限可以使用revoke命令

wKiom1TLFbTAAmCGAABo1hSo2C8326.jpg



最后,看看数据库的备份和还原;


备份分冷备和热备

冷备份就是直接备份 /var/lib/mysql下面的数据库文件了


wKioL1TLHWTRqOhJAADIXIzsaeY042.jpg


热备可以通过 mysqldump实现,比如下面我备份了 mydb 下面的student表


wKiom1TLHIKTuQWZAACBKo8E-Ko728.jpg


查看一下这个生成的sql文件,本质是先删除现有表,然后创建一个新的,然后插入数据


wKioL1TLHYaBiIl6AAMHC6ugLyY668.jpg


对现有表做个修改,添加一行数据


wKiom1TLHKuAyAO2AAEoASxlf3g649.jpg


还原重定向回来


wKioL1TLHZKjhQoJAABYYYtLxOs416.jpg


数据已经恢复了


wKiom1TLHLXAjRxiAAChsrQ_kjY125.jpg










本文转自 beanxyz 51CTO博客,原文链接:http://blog.51cto.com/beanxyz/1609972,如需转载请自行联系原作者
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
SQL 关系型数据库 MySQL
|
9月前
|
NoSQL 关系型数据库 MySQL
阿里云RDS关系型数据库大全_MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等
阿里云RDS关系型数据库如MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等,NoSQL数据库如Redis、Tair、Lindorm和MongoDB
280 0
|
存储 自然语言处理 关系型数据库
mysql/mariadb 实现全文检索
mysql/mariadb 实现全文检索
mysql/mariadb 实现全文检索
|
9月前
|
NoSQL 关系型数据库 MySQL
阿里云关系型数据库详细介绍MySQL/MariaDB/SQL Server/PolarDB/PostgreSQL等
阿里云关系型数据库详细介绍MySQL/MariaDB/SQL Server/PolarDB/PostgreSQL等,阿里云RDS关系型数据库如MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等
143 0
|
9月前
|
NoSQL Cloud Native 关系型数据库
阿里云RDS数据库_MySQL_SQL Server_MariaDB_PolarDB_PostgreSQL
阿里云RDS关系型数据库大全:MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等
116 0
|
关系型数据库 MySQL 网络安全
关于对连接数据库时出现1130-host “**” is not allowed to connect to this MySql/mariadb server
关于对连接数据库时出现1130-host “**” is not allowed to connect to this MySql/mariadb server
396 0
|
11月前
|
关系型数据库 MySQL API
MariaDB数据库中如何允许远程链接mysql并开放3306端口
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
624 0
|
11月前
|
存储 关系型数据库 MySQL
mysql--Centos安装MariaDB(mysql)
mysql--Centos安装MariaDB(mysql)
1550 0
|
11月前
|
Ubuntu 关系型数据库 MySQL
Ubuntu安装MariaDB-10.3数据库(等同于Mysql-5.7)
Ubuntu安装MariaDB-10.3数据库(等同于Mysql-5.7)
242 0
|
SQL Oracle 前端开发
使用MariaDB线程池提高MySQL的扩展性
MySQL的线程池能够有效地解决大量短连接的性能问题,大幅提高MySQL数据库的扩展性。但官方MySQL的线程池在收费的企业版中才有,免费的社区版中没有这个功能,这里介绍MairaDB的线程池。
179 0

推荐镜像

更多