博客
关于我
《MySQL入门学习》(p43~p45)
阅读量:136 次
发布时间:2019-02-27

本文共 2336 字,大约阅读时间需要 7 分钟。

数据库的备份与还原

数据库备份与还原是数据库管理中非常重要的操作之一。通过备份,可以在数据库出现问题时快速恢复数据,确保业务的连续性。以下是数据库备份与还原的基本操作步骤:

  • 备份数据库

    使用 mysqldump 工具可以对数据库进行备份。以下是示例命令:

    mysqldump -uroot -p123456 db1 > E://a.sql

    该命令会将 db1 数据库的内容备份到文件 E://a.sql

  • 验证备份文件

    在备份完成后,可以通过以下命令验证备份文件是否正确:

    mysql -uroot -p123456 < E://a.sql

    如果没有错误信息,说明备份文件成功生成。

  • 还原数据库

    在数据库出现问题时,可以通过以下步骤恢复数据:

    • 首先,删除目标数据库:
      mysql -uroot -p123456 -e "drop database db1"
    • 然后,创建新数据库并使用备份文件:
      mysql -uroot -p123456 -e "create database db1; use db1;" < E://a.sql
    • 最后,验证还原结果:
      show databases;
  • 今日内容

    截至今日,重点学习了数据库的备份与还原操作,以及多表查询的相关知识。以下是操作示例:

  • 创建新数据库

    mysql 服务器上,可以通过以下命令创建新数据库:

    create database db2;
  • 创建部门表

    db2 数据库中创建部门表 dept,字段包括 id(主键,自增),name(部门名称):

    create table dept (      id int primary key auto_increment,      name varchar(20)  );

    插入数据:

    insert into dept values ('开发部'), ('市场部'), ('财务部');
  • 创建员工表

    db2 数据库中创建员工表 emp,字段包括 id(主键,自增)、namegender(性别)、salary(薪资)、join_date(入职日期)、dept_id(部门ID,外键):

    create table emp (      id int primary key auto_increment,      name varchar(10),      gender char(1),      salary double,      join_date date,      dept_id int,      foreign key (dept_id) references dept(id)  );

    插入数据:

    insert into emp (name, gender, salary, join_date, dept_id) values      ('孙悟空', '男', 7200, '2013-02-24', 1),      ('猪八戒', '男', 3600, '2010-12-02', 2),      ('唐僧', '男', 9000, '2008-08-08', 2),      ('白骨精', '女', 5000, '2015-10-07', 3),      ('蜘蛛精', '女', 4500, '2011-03-14', 1);
  • 多表查询——概述

    在实际项目中,多表查询是处理复杂业务逻辑的重要手段。以下是多表查询的基本概念和操作示例:

  • 创建多表结构

    • 创建部门表 dept 和员工表 emp,并设置外键关系:
      create table dept (      id int primary key auto_increment,      name varchar(20)  );  create table emp (      id int primary key auto_increment,      name varchar(10),      gender char(1),      salary double,      join_date date,      dept_id int,      foreign key (dept_id) references dept(id)  );
  • 插入多表数据

    • 插入部门数据:
      insert into dept values ('开发部'), ('市场部'), ('财务部');
    • 插入员工数据:
      insert into emp (name, gender, salary, join_date, dept_id) values      ('孙悟空', '男', 7200, '2013-02-24', 1),      ('猪八戒', '男', 3600, '2010-12-02', 2),      ('唐僧', '男', 9000, '2008-08-08', 2),      ('白骨精', '女', 5000, '2015-10-07', 3),      ('蜘蛛精', '女', 4500, '2011-03-14', 1);
  • 执行多表查询

    • 查询部门和员工的关联数据:
      select d.name as dept_name, e.name as emp_name, e.salary      from dept d join emp e on d.id = e.dept_id      where d.name = '开发部';

      该查询将返回属于“开发部”的所有员工信息。

  • 通过上述操作,可以清晰地看到多表查询在实际数据库中的应用场景。

    转载地址:http://yjjb.baihongyu.com/

    你可能感兴趣的文章
    nginx 常用配置记录
    查看>>
    Nginx 我们必须知道的那些事
    查看>>
    Nginx 的 proxy_pass 使用简介
    查看>>
    Nginx 的配置文件中的 keepalive 介绍
    查看>>
    Nginx 负载均衡与权重配置解析
    查看>>
    Nginx 负载均衡详解
    查看>>
    nginx 配置 单页面应用的解决方案
    查看>>
    nginx 配置https(一)—— 自签名证书
    查看>>
    nginx 配置~~~本身就是一个静态资源的服务器
    查看>>
    Nginx 配置解析:从基础到高级应用指南
    查看>>
    Nginx下配置codeigniter框架方法
    查看>>
    nginx添加模块与https支持
    查看>>
    Nginx用户认证
    查看>>
    Nginx的Rewrite正则表达式,匹配非某单词
    查看>>
    Nginx的使用总结(一)
    查看>>
    Nginx的可视化神器nginx-gui的下载配置和使用
    查看>>
    Nginx的是什么?干什么用的?
    查看>>
    Nginx访问控制_登陆权限的控制(http_auth_basic_module)
    查看>>
    nginx负载均衡器处理session共享的几种方法(转)
    查看>>
    nginx负载均衡的5种策略(转载)
    查看>>