当前位置: 首页 > news >正文

任务8 数据库服务配置与管理

数据库服务概述

数据库管理系统

用于建立、修改、访问和维护数据库。

具有多用户和多任务的特性,支持多个用户和应用程序同时进行操作。

数据库管理员通过DBMS对数据库进行统一的管理和控制。

维护数据的安全性和完整性。

按照数据在数据库中的存储和管理方式分为三种类型,即层次型数据库、网状型数据库和关系型数据库。

关系型数据库

将数据及数据关系用简单的二维表结构表示

行和列组成一张数据表

实体(entity):一张表代表一个实体,是对事物及其关系分类的结果

行(row):表的一行也称为一条记录,代表实体的一个实例

列(column):表的一列也称为一个字段(field),表示实体的一个属性(attribute)

值(value):实例属性的具体取值

键(key):键是表的某1列或某几列,用来识别表中特定的行

数据库服务端配置

Mariadb安装与启停

软件名称:mariadb-server、mariadb ,后台守护进程: mariadb。

yum  install  mariadb-server  mariadb  -y
rpm  -qa  |  grep  mariadb
systemctl  start | stop | restart | status | enable  mariadb

数据库初始化及登录

执行mysql_secure_installation命令对数据库进行初始化操作

        设置root用户登录数据库时的密码

        删除匿名用户

        禁止root用户远程登录

        删除默认的测试数据库

        刷新数据库授权列表,使数据库初始化设置立即生效

使用mysql命令即可登录MariaDB数据库

        -u选项后跟登录用户名,-p选项指定需要输入登录密码

mysql_secure_installation
Enter current password for root (enter for none):	<== 输入root用户密码
Set root password? [Y/n]  y						<== 设置root用户密码
New password: 
Re-enter new password: 
Remove anonymous users? [Y/n]	y				<== 删除匿名用户
Disallow root login remotely? [Y/n]  y				<== 取消root用户远程登录
Remove test database and access to it? [Y/n] y		<== 删除test的数据库及访问权限
Reload privilege tables now? [Y/n] y				<== 刷新授权表使修改生效
[root@centos7 ~]# mysql  -u  root  -p
Enter password: 			<== 输入root用户密码
……
MariaDB [(none)]> quit
Bye

数据库常用操作 

数据库恢复与备份

// 备份全部数据库
mysqldump  -u  root  -p  -A  > /tmp/backup1.sql// 备份db1和db2两个数据库
mysqldump  -u  root  -p  --databases  db1  db2 > /tmp/backup2.sql// 备份db1数据库中的表t1
mysqldump  -u  root  -p  --databases  db1  --tables  t1 > /tmp/backup3.sql// 备份db1数据库中的表t1里的指定记录
mysqldump -u root -p --databases db1 --tables t1 --where=’id=25’ > /tmp/backup4.sql// 备份db1数据库中的表结构
mysqldump  -u  root  -p  --no-data  --databases  db1 > /tmp/backup5.sql// 恢复数据库,将数据库备份文件输入重定向至mysqldump
mysqldump  -u  root  -p  < /tmp/backup1.sql

数据库配置实例

具体配置需求及实现步骤如下:

1、安装MariaDB数据库软件。

yum  install  mariadb-server  mariadb  -y

2、启动数据库服务 

systemctl  restart  mariadb

3、初始化数据库时设置root用户密码、删除匿名用户和测试数据库,同时禁止root用户远程登录数据库

mysql_secure_installation
Enter current password for root (enter for none):
Set root password? [Y/n] y
New password: 
Re-enter new password: 
Password updated successfully!
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

4、创建新用户mailadmin,密码为ChinaSkill22!

先用root用户登陆数据库

mysql  -u  root  -p

 再新建用户

create  user  mailadmin@'localhost'  identified  by  'ChinaSkill22!' ;

5、创建数据库maildb

create  database  maildb ;

6、在maildb中创建表mailbox,包含4个字段,分别是username、pwd、domain、ctime。其中,username是主键。

先使用maildb

use  maildb;

 再创建表

create table mailbox (username varchar(60) primary key, pwd varchar(20), domain varchar(40), ctime datetime) ;

7、授权mailadmin用户完全操作mailbox表

grant  all  privileges  on  maildb.mailbox  to  mailadmin@'%' ;

8、以mailadmin用户身份登录数据库,切换到maildb数据库。

先退出当前用户

quit

再登录mailadmin 

mysql  -u  mailadmin  -p

切换到maildb数据库

 use  maildb ;

9、向mailbox表中插入两条数据,用户名分别为mailuser1@chinaskills.cn和mailuser2@chinaskills.cn,密码默认为123456

insert into mailbox values ('mailuser1@chinaskills.cn', '123456', 'chinaskills.cn', '2022-11-30 11:02:25'); 
insert into mailbox values ('mailuser2@chinaskills.cn', '123456', 'chinaskills.cn', '2022-11-30 11:02:25');
select  *  from  mailbox ;

10、备份mailbox表中数据

先退出

quit

再备份

 mysqldump -u root -p --databases maildb --tables mailbox > /tmp/mailbox.sql
 ls  -l  /tmp/mailbox.sql


http://www.mrgr.cn/news/81675.html

相关文章:

  • Denavit-Hartenberg DH MDH坐标系
  • 核函数(Kernel function)(举例说明,通俗易懂)
  • C++设计新思维:泛型编程与设计模式之应用学习笔记
  • 从epoll事件的视角探讨TCP:三次握手、四次挥手、应用层与传输层之间的联系
  • Github 2025-01-15 C开源项目日报 Top10
  • Android SystemUI——服务启动流程(二)
  • C#学习1:初接触,C#的一些基础,和相关报错
  • TrackZone:使用Ultralytics YOLO11在区域内进行对象跟踪
  • 华为麦芒5(安卓6)termux记录 使用ddns-go,alist
  • SpringCloudAlibaba实战入门之路由网关Gateway初体验(十一)
  • C++内存空间_内存管理_
  • mysql 数据库迁移到达梦数据库
  • mybatis-plus自动填充时间的配置类实现
  • 【Compose multiplatform教程07】多平台常用组件和重要组件目录
  • 【软件工程】十万字知识点梳理 | 期末复习专用
  • 黑马Java面试教程_P9_JVM虚拟机
  • 【流量、洪水数据下载】网站介绍和下载经验....不断更新!
  • Nginx性能优化全方案:打造一个高效服务器
  • 分布式算法(四):Basic Paxos协议初探(角色、阶段)
  • LeetCode每日一题
  • ROUGE指标介绍
  • 010-spring-后置处理器(重要)
  • uniapp小程序实现弹幕不重叠
  • YOLOv8中间特征层可视化
  • Docker完整技术汇总
  • Windows下C++使用SQLite