Linux学习笔记--25(使用MariaDB数据库管理系统)

本文详细介绍了如何初始化MariaDB服务,包括设置root密码、安全配置和基本操作,如创建用户、授权、数据库与表操作,以及备份恢复策略。适合初学者快速上手数据库管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库管理系统

数据库是按照某些特定结构来存储数据资料的数据仓库。数据库管理系统是一种能够对数据库中存放的数据进行建立、修改、删除、查找、维护等操作的软件程序。

初始化MariaDB服务

MariaDB是从Mysql开源出来的分支产品,几乎完全兼容MySQL。做了很多扩展特性,如微秒级别的支持、线程池、子查询优化、进程报告等。
安装:

# yum install mariadb mariadb-server
# systemctl start mariadb
# systemctl enable mariadb

安装完之后不要立即使用,需要先对数据库程序进行初始化操作。5个步骤

  • 设置root管理在数据库中的密码值(注意,该密码并非root管理员在系统中的密码,这里的密码值默认为空,可直接回车)。
  • 设置root管理在数据库中的专有密码。
  • 删除匿名账户,并用root管理员从远程登录数据库,确保数据库的业务安全。
  • 删除默认的测试数据库,取消测试数据库的一系列访问权限。
  • 刷新授权列表,让初始化立即生效。
# mysql_secure_installation

在这里插入图片描述

一般生产环境中是站库分离,如让root管理员远程访问数据库,可在上面的初始化操作中设置策略,以允许root管理员从远程访问。然后还需要设置防火墙,使其放行对数据库服务程序的访问请求,数据库默认端口3306,在防火墙策略中服务名称统一叫作mysql。

# firewall-cmd --permanent --add-service=mysql
# friewall-cmd --reload

登录MariaDB数据,-u参数指定以root用户登录,-p参数来验证该用户在数据库中的 密码值。

# mysql -u root -p
> SHOW databases; (查看当前有哪些数据库)
> SET password = PASSWORD('linuxprobe'); (修改密码)
> exit

在这里插入图片描述

管理账户以及授权

创建用户格式:“CREATE USER 用户名@主机名 IDENTIFIED BY ‘密码’;”

> create user luky@localhost identified by 'linuxprobe';
> use mysql;
> select host,user,password from user where user="luky";

在这里插入图片描述

grant命令进行账户授权

GRANT命令的常见格式及解释
在这里插入图片描述

例子:对mysql数据库中的user表单向账户luky授予查询、更新、删除及插入权限。

# mysql -u root -p
> use mysql;
> grant select,update,delete,insert on mysql.user to luky@localhost;
> show grants for luky@localhost;
# mysql -u luky -p
> show databases;
> use mysql
> show tables;
> exit

在这里插入图片描述
在这里插入图片描述

移除权限revoke

# mysql -u root -p
> use mysql;
> revoke select,update,delete,insert on mysql.user from luky@localhost;
> show grants for luky@localhost;

在这里插入图片描述

创建数据库与表单

用于创建数据库的命令及作用
在这里插入图片描述

> create database linuxcool;
> show databases;
> use linuxcool;
> create table mybook (name varchar(15), price int, pages int);
> describe mybook;

在这里插入图片描述

管理表单及数据

> insert into mybook(name, price, pages) values ('linuxprobe', '60', '518');
> select * from mybook;
> update mybook set price=55;
> select name,price from mybook;
> delete from mybook;
> select * from mybook;
> insert into mybook(name, price, pages) values ('linuxprobe1', '30', '518');
> insert into mybook(name, price, pages) values ('linuxprobe2', '50', '518');
> insert into mybook(name, price, pages) values ('linuxprobe3', '80', '518');
> insert into mybook(name, price, pages) values ('linuxprobe4', '100', '518');

在这里插入图片描述
where命令中使用的参数及作用
在这里插入图片描述

> select * from mybook where price>75;
> select * from mybook where price!=80;

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

数据库的备份及恢复

mysqldump命令用于备份数据库数据,格式为"mysqldump [参数][数据库名称]"。
其中参数与mysql基本相同,-u定义登录数据库的账号名称,-p代表密码提示符。

# mysqldump -u root -p linuxcool > /root/linuxcoolDB.dump (备份linuxprobe)
# mysql -u root -p
> drop database linuxcool;   (删除linuxprobe数据库)
> show databases;
> create database linuxcool; (创建一个linuxprobe数据库便于后面恢复)
> exit
# mysql -u root -p linuxcool < /root/linuxcoolDB.dump  (恢复linuxprobe数据库)
# mysql -u root -p  
> use linuxcool;
> show tables;
> describe mybook;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值