MySQL数据备份与还原、索引、视图

news2024/12/29 11:51:35

一.备份与还原 

/***************************样例表***************************/
    CREATE DATABASE booksDB;
    use booksDB;

    CREATE TABLE books
    (
      bk_id  INT NOT NULL PRIMARY KEY,
      bk_title VARCHAR(50) NOT NULL,
      copyright YEAR NOT NULL
    );
    INSERT INTO books
    VALUES (11078, 'Learning MySQL', 2010),
    (11033, 'Study Html', 2011),
    (11035, 'How to use php', 2003),
    (11072, 'Teach youself javascript', 2005),
    (11028, 'Learing C++', 2005),
    (11069, 'MySQL professional', 2009),
    (11026, 'Guide to MySQL 5.5', 2008),
    (11041, 'Inside VC++', 2011);

    CREATE TABLE authors
    (
      auth_id     INT NOT NULL PRIMARY KEY,
      auth_name  VARCHAR(20),
     auth_gender CHAR(1)
    );
    INSERT INTO authors  
    VALUES (1001, 'WriterX' ,'f'),
    (1002, 'WriterA' ,'f'),
    (1003, 'WriterB' ,'m'),
    (1004, 'WriterC' ,'f'),
    (1011, 'WriterD' ,'f'),
    (1012, 'WriterE' ,'m'),
    (1013, 'WriterF' ,'m'),
    (1014, 'WriterG' ,'f'),
    (1015, 'WriterH' ,'f');

    CREATE TABLE authorbook
    (
      auth_id  INT NOT NULL,
      bk_id   INT NOT NULL,
      PRIMARY KEY (auth_id, bk_id),
      FOREIGN KEY (auth_id) REFERENCES authors (auth_id),
      FOREIGN KEY (bk_id) REFERENCES books (bk_id)
    );

    INSERT INTO authorbook
    VALUES (1001, 11033), (1002, 11035), (1003, 11072), (1004, 11028),
    (1011, 11078), (1012, 11026), (1012, 11041), (1014, 11069);

    /***************************样例表***************************/

 先创建一个专门文件夹

mkdir -p /backup/db

1、使用mysqldump命令备份数据库中的所有表

[root@localhost ~]# mysqldump -uroot -p123456 booksDB > /backup/db/booksDB.sql;


    2、备份booksDB数据库中的books表

[root@localhost ~]# mysqldump -uroot -p123456 booksDB books > /backup/db/booksDB_books.sql;


    3、使用mysqldump备份booksDB和test数据库

 [root@localhost ~]# mysqldump -uroot -p123456 --databases booksDB test > /backup/db/booksDB_test.sql;


    4、使用mysqldump备份服务器中的所有数据库

[root@localhost ~]# mysqldump -uroot -p123456 --all-databases > /backup/db/booksDB_all.sql;



    5、使用mysql命令还原第二题导出的books表

[root@localhost ~]# mysql -uroot -p123456 --execute='select * from books;' booksDB > /backup/db/booksDB_books.sql;


    6、进入数据库使用source命令还原第二题导出的books表 

[root@localhost ~]# mysql -uroot -p123456 -e 'source /backup/db/booksDB_books.sql'

二、索引


    1、建立一个utf8编码的数据库test1


    2、建立商品表goods和栏目表category
    按如下表结构创建表:存储引擎engine myisam 字符集charset utf8

 

 

        mysql> desc goods;
        +------------+-------------+------+-----+---------+----------------+
        | Field      | Type        | Null | Key | Default | Extra          |
        +------------+-------------+------+-----+---------+----------------+
        | goods_id   | int(11)     | NO   | PRI | NULL    | auto_increment |
        | goods_name | varchar(20) | NO   |     |         |                |
        | cat_id     | int(11)     | NO   |     | 0       |                |
        | brand_id   | int(11)     | NO   |     | 0       |                |
        | goods_sn   | char(12)    | NO   |     |         |                |
        | shop_price | float(6,2)  | NO   |     | 0.00    |                |
        | goods_desc | text        | YES  |     | NULL    |                |
        +------------+-------------+------+-----+---------+----------------+
        7 rows in set (0.00 sec)

        
        mysql> desc category;
        +-----------+-------------+------+-----+---------+----------------+
        | Field     | Type        | Null | Key | Default | Extra          |
        +-----------+-------------+------+-----+---------+----------------+
        | cat_id    | int(11)     | NO   | PRI | NULL    | auto_increment |
        | cate_name | varchar(20) | NO   |     |         |                |
        | parent_id | int(11)     | NO   |     | 0       |                |
        +-----------+-------------+------+-----+---------+----------------+
        3 rows in set (0.00 sec)

    3、删除 goods 表中的 goods_desc 字段及货号字段,并增加 click_count 字段 


    4、在 goods_name 列上加唯一性索引(用alter table方式)  


    5、在 shop_price 列上加普通索引(用create index方式)

 
    6、在 click_count 上增加普通索引,然后再删除 (分别使用drop index和alter table删除)

 

 

 


    
三、视图


    学生表:Student (Sno, Sname, Ssex , Sage, Sdept)
    学号,姓名,性别,年龄,所在系 Sno为主键
    课程表:Course (Cno, Cname,)
    课程号,课程名 Cno为主键
    学生选课表:SC (Sno, Cno, Score)
    学号,课程号,成绩 Sno,Cno为主键
    
    1、创建一视图 stu_info,查询全体学生的姓名,性别,课程名,成绩。


    2、删除视图 stu_info。

 mysql> drop view stu_info;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/745004.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity2019_寻路系统

简单导航寻路功能 选定为静态网格导航 Windows>Ai>Navigation,点击烘焙 角色上挂一个导航网格组件 挂上脚本,鼠标点击位置设置为导航的终点 using UnityEngine; using UnityEngine.AI;public class PalyerMovement : MonoBehaviour {private Nav…

Mysql——》数据目录

推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…

vue3 KeepAlive实操

一.相关文档 KeepAlive 官方文档Vue Router 文档Pinia 文档 二.需求 首页->列表 —不缓存列表列表->详情 —缓存列表详情->列表 — 恢复列表缓存 三.代码如下 1.定义pinia export const useStore defineStore(store, {state: () > ({cachedList: [] //缓存白…

校园课表微信小程序全栈项目

遇到的第一个问题关于npm start 首先找到对应的后端项目 crtl shift (esc键下的波浪号) 召唤终端 Error:Cannot find module dotenv 解决问题: npm install dotenv 简写 npm i dotenv 然后遇到第二个问题 Port 3000 is already in use 我的3000接口被占用 那就要去检…

【直到用了Tabby这款开源好用的终端工具,直接和Xshell、Putty、FinalShell告别】

🚀 AI破局先行者 🚀 🌲 AI工具、AI绘图、AI专栏 🍀 🌲 如果你想学到最前沿、最火爆的技术,赶快加入吧✨ 🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者🏆&am…

红队攻击:初始访问

聆听你的声音 如果你有独到的想法和建议,欢迎私信与我一同分享! 公众号:安全攻防渗透 0x01 windows-多账户同时登陆 描述 攻击者可能会获取并滥用本地帐户的凭据,以获取初始访问权限,持久性,权限提升或…

未设置Strict-Transport-Security响应头【原理扫描】

IIS环境检测到网站存在响应头缺失漏洞解决办法: 1.webconfig中添加响应头 <?xml version"1.0" encoding"UTF-8"?> <configuration><system.webServer><directoryBrowse enabled"false" /><httpProtocol><cu…

Elasticsearch 8.8.1安装及启动

华为云的镜像去下载 ElasticSearch: https://mirrors.huaweicloud.com/elasticsearch/?CN&OD logstash: https://mirrors.huaweicloud.com/logstash/?CN&OD kibana: https://mirrors.huaweicloud.com/kibana/?CN&OD 原文链接&#xff1a;https://blog.csdn.ne…

AI加速财务智能化,实在智能、优贲财税、楚云科技共探数字员工新未来

作为财务发展的最新前沿&#xff0c;智能财务正在逐步渗入日常工作中&#xff0c;加快企业数字化转型步伐&#xff0c;促进我国财务信息化建设的快速发展。在当前形势下&#xff0c;企业应如何进行数字化转型以重塑业务、财务和税务等关系&#xff0c;形成管理闭环&#xff0c;…

注解和反射03(Java)

#拓展开题&#xff1a; 类的加载与ClassLoader的理解 什么时候会发生类初始化&#xff1f; 类加载器的作用 动态创建对象执行方法 有了Class对象&#xff0c;能做什么&#xff1f; newInstance()是一个Java中使用反射创建对象实例的方法&#xff0c;通过该方法可以获取类的构…

智能物流监控系统的数据平台技术研究

完整资料进入【数字空间】查看——baidu搜索"writebug" 1.1 项目背景 物联网技术是利用传感器嵌入各种末端设备&#xff0c;通过无线或有线网络接入互联网以实现人与物、物与物实时互联的新兴技术[1]。 智能物流监控系统是在物流量越来越大、物流价值越来越贵重的背…

【Distributed】zookeeper+kafka的应用及部署

文章目录 一、zookeeper1. zookeeper的概述1.1 Zookeeper 定义1.2 Zookeeper 工作机制1.3 Zookeeper 特点1.4 Zookeeper 数据结构1.5 Zookeeper 应用场景1.6 Zookeeper 选举机制第一次启动选举机制非第一次启动选举机制选举Leader规则 2. 部署 Zookeeper 集群2.1 安装前准备2.2…

MySQL数据库表数据的基本操作

目录 1.创建表 2.插入数据 3.修改表数据 3.1、将所有员工薪水修改为5000元 ​3.2、将姓名为张三的员工薪水修改为3000元 ​3.3、将姓名为李四的员工薪水修改为4000元gender改为女 ​3.4、将王五的薪水在原有基础上增加1000元 4、MySQL字符集 1.创建表 创建员工表emplo…

【技巧】Latex在线工具:公式编辑器、表格编辑器

找到什么再补充 目录 表格编辑器 公式编辑器 表格编辑器 https://www.tablesgenerator.com/ 公式编辑器 https://www.latexlive.com/

数据库开发和数据库管理有什么区别?

数据库开发&#xff08;Database Development&#xff09;和数据库管理&#xff08;Database Administration&#xff09;是数据库领域中的两个关键角色和职责。 我这里刚好有嵌入式、单片机、plc的资料需要可以私我或在评论区扣个6 数据库开发人员专注于以下方面&#xff1a…

windows安装gitlab-runner提交gitlab自动打包maven包

运行环境&#xff1a; 私服gitlab,想使用gitlab的ci/cd自动打包&#xff0c;不需要将打好的包部署到远程服务器而是保存在本地的&#xff0c;可以在本地安装gitlab-runner,打好的包直接在本地生成 本地是window环境 1 本地安装maven https://maven.apache.org/download.cgi …

Python批量对word文件重命名

一、背景 在日常工作或学习中&#xff0c;我们可能会遇到需要对大量的 Word 文件进行重命名的情况。手动一个一个修改文件名费时费力&#xff0c;而编写一个 Python 脚本则可以自动化完成这个任务&#xff0c;提高效率。 二 、开发环境 为了实现批量对 Word 文件进行重命名的功…

leaflet在天地图上添加poi兴趣点

前言 书接上节&#xff0c;在上一篇博客加载的天地图的基础上&#xff0c;加载poi兴趣点。 上节传送&#xff1a;使用leaflet在html中加载天地图且去掉左上角的缩放图标以及右下角的logo 一、加载poi的方法 leaflet通过 L.marker 方法用来加载poi&#xff0c;我们只需填入p…

嵌入式Linux领域中的C++:应用层主力与挑战

嵌入式Linux领域中&#xff0c;C是应用层的主要编程语言之一。尽管QT/C在某些领域被Android/Java逐渐替代&#xff0c;但在医疗、工控、车载导航等领域仍占主导地位。对于嵌入式人员学习C的观点存在一定片面性。C的难点在于移动语义、模板偏特化、lambda表达式、模板元编程等知…

Unity实现全景图

1.前言 实现全景查看有两种方式&#xff0c;一种是创建天空盒&#xff0c;另外一种是全景图渲染到一个球形上&#xff0c;从内球内部看。两者都可以用天空盒材质Skybox实现。 2.创建天空盒材质 先创建一个材质球命名为Sky&#xff0c;在 Shader 下拉选单中&#xff0c;单击 Sk…