运维-数据库的操作

数据库操作

  • 1. 创建一个 Maria DB 数据库,名为 Contacts
  • 2. 数据库查询
        • 1. 密码是fadora 的人的名字是什么?
        • 2. 有多少人的姓名是 John ,同时居住在 Santa Clara
  • 3. 数据库备份

1. 创建一个 Maria DB 数据库,名为 Contacts

要求:
1. 将users.mdb导入到数据库 ,数据库只能被 localhost 访问。
2. 除了 root 用户,此数据库只能被用户 Mary 查询,此用户密码为 redhat
3. root 用户的数据库密码为 redhat ,同时不允许空密码登录

users.mdb下载链接
本次实验环境为centOS8.0,mariadb10.5版本

  1. 登录 mariadb数据库,创建名为Contacts数据库
// CREATE DATABASE IF NOT EXISTS Contacts;
// SHOW DATABASES;

运维-数据库的操作_第1张图片
可以看出已经创建完成

  1. 将users.mdb导入到数据库
// source /test/users.mdb;
  1. 用户及权限修改
// create user Mary@localhost identified by 'redhat'; # 创建用户Mary
// grant select on Contacts.* to Mary@localhost; # 提权

2. 数据库查询

在 system1 上使用数据库 Contacts ,并使用相应的 SQL 查询以回答下列问题:

1. 密码是fadora 的人的名字是什么?

// select * from u_name left join u_passwd on u_name.userid=u_passwd.uid where password="fadora";

运维-数据库的操作_第2张图片

2. 有多少人的姓名是 John ,同时居住在 Santa Clara

// select * from u_name where userid in (select uid from u_loc where location like "Santa Clara") and firstname="John";

运维-数据库的操作_第3张图片

// select * from u_name left join u_loc on u_name.userid=u_loc.uid where location="Santa Clara" and firstname="John"; # 左连接法

运维-数据库的操作_第4张图片

3. 数据库备份

使用mysqldump备份数据库Contacts,备份时压缩,文件名:Contacts_年-月-日.sql.gz
以下操作在命令行执行

// mysqldump -uroot -p123 -B Contacts > /test/Contacts.sql | gzip -c Contacts.sql > /test/Contacts_2020-6-4.sql.gz

在这里插入图片描述

你可能感兴趣的:(运维-数据库的操作)