【MySQL】备份数据(导出数据 / 导入数据)

news2024/9/28 3:30:43

🎯导出数据

1、使用 SELECT ... INTO OUTFILE 语句导出数据

  •  SELECT...INTO OUTFILE 是 MySQL 用于导出数据的语句,它允许将查询结果保存到指定的文件中。

该语句的基本语法如下:
 

SELECT column1, column2, ...  
INTO OUTFILE 'file_path'  
FIELDS TERMINATED BY 'field_separator'  
ENCLOSED BY 'field_encloser'  
LINES TERMINATED BY 'line_separator'  
FROM table_name;
  1. column1, column2, ...:要导出的列名。
  2. INTO OUTFILE 'file_path':指定导出数据时要保存到的文件路径。
  3. FIELDS TERMINATED BY 'field_separator':指定字段之间的分隔符,默认为逗号(,)。
  4. ENCLOSED BY 'field_encloser':指定字段的包围字符,默认为双引号(")。
  5. LINES TERMINATED BY 'line_separator':指定行之间的分隔符,默认为换行符(\n)。
  6. table_name:要导出数据的表名。

以下是一个示例:

SELECT id, name, email  
INTO OUTFILE '/tmp/users.txt'  
FIELDS TERMINATED BY ','  
ENCLOSED BY '"'  
LINES TERMINATED BY '\n'  
FROM users;

从名为 users 的表中选择 id、name 和 email 列,并将结果保存到 /tmp/users.txt 文件中。文件中的每一行都包含一个记录,记录中的字段以逗号分隔,并用双引号包围。行之间用换行符分隔。

注意:

  •  执行 SELECT ... INTO OUTFILE 语句导出数据,可能回报一下错误
ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

原因:

  • 执行语句
show global variables like '%secure_file_priv%';
  • 查看结果 
+------------------+-----------------------------------------+
| Variable_name    | Value                                   |
+------------------+-----------------------------------------+
| secure_file_priv | D:\work\mysql\MySQL-Server-8.0\Uploads\ |
+------------------+-----------------------------------------+
  1.  secure_file_priv参数用于限制LOAD DATA, SELECT …OUTFILE, LOAD_FILE()传到哪个指定目录。
  2. secure_file_priv 为 NULL 时,表示限制mysqld不允许导入或导出。
  3. secure_file_priv 为 /tmp 时,表示限制mysqld只能在/tmp目录中执行导入导出,其他目录不能执行。
  4. secure_file_priv 没有值时,表示不限制mysqld在任意目录的导入导出。
  5. secure_file_priv 参数是只读参数,不能使用set global命令修改。

解决:

  • 查看MySQL服务器的配置文件(通常是my.cnf或my.ini),确保--secure-file-priv选项被设置。
  • 如果以上选项未被设置,可以将secure_file_priv参数添加到MySQL服务器的配置文件中,并重新启动MySQL服务器。

 演示:

  • 执行语句
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| product            |
| sys                |
| xj                 |
+--------------------+
6 rows in set (0.00 sec)


mysql> use product;
Database changed


mysql> show tables;
+-------------------+
| Tables_in_product |
+-------------------+
| emp               |
| emp_log           |
| goods             |
| order_for_goods   |
| person_table      |
| sequence          |
| test_transaction  |
| text_alter        |
| text_copy         |
| text_null         |
| text_table        |
| text_table2       |
| users             |
+-------------------+
13 rows in set (0.00 sec)


mysql> SELECT *
    -> INTO OUTFILE 'D:/work/mysql/MySQL-Server-8.0/Uploads/emp.sql'
    -> FIELDS TERMINATED BY ','
    -> ENCLOSED BY '"'
    -> LINES TERMINATED BY '\n'
    -> FROM emp;
Query OK, 15 rows affected (0.00 sec)
  •  查看结果

2、导出 SQL 格式的数据(用于实现数据库的备份策略)

  • 这是一个在命令行下执行的MySQL数据库备份命令。该命令使用mysqldump工具将名为product的数据库备份到一个名为product.sql的文件中。
mysqldump -uxiaojian -proot product > D:\work\mysql\MySQL-Server-8.0\Uploads\product.sql

  1. mysqldump: 这是一个用于创建MySQL数据库备份的工具。
  2. -u: 用于指定数据库用户名,这里为xiaojian。
  3. -p: 用于提示输入数据库密码,这里为root。
  4. product: 这是要备份的数据库名。
  5. >: 将输出重定向到D:\work\mysql\MySQL-Server-8.0\Uploads\product.sql文件中。
  6. 注意执行这个命令需要在MySQL服务器上执行,并且执行者需要具有对product数据库的读取权限。

  • 演示执行命令

  •  查看导出的备份文件

  •  整个数据库(product)的数据内容
-- MySQL dump 10.13  Distrib 5.7.28, for Win64 (x86_64)
--
-- Host: localhost    Database: product
-- ------------------------------------------------------
-- Server version	8.0.33

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `emp`
--

DROP TABLE IF EXISTS `emp`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `emp` (
  `id` int NOT NULL AUTO_INCREMENT,
  `sex` int DEFAULT NULL,
  `user_name` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
  `salary` decimal(10,2) DEFAULT NULL,
  `join_time` datetime DEFAULT NULL,
  `department` int DEFAULT NULL,
  `address` varchar(255) DEFAULT NULL,
  `text` char(255) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE,
  KEY `idx_name_salary` (`user_name`,`salary`)
) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8mb3 ROW_FORMAT=DYNAMIC;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `emp`
--

LOCK TABLES `emp` WRITE;
/*!40000 ALTER TABLE `emp` DISABLE KEYS */;
INSERT INTO `emp` VALUES (1,1,'郭成龙',1800.90,'2023-06-07 00:00:00',1,NULL,NULL),(2,1,'小王',3600.89,'2023-05-02 00:00:00',2,NULL,NULL),(3,0,'马成虫',1000.10,'2023-01-08 00:00:00',2,NULL,NULL),(4,1,'老狗',1100.90,'2023-04-07 00:00:00',3,NULL,NULL),(5,0,'臭弟弟',4500.99,'2023-03-14 00:00:00',1,NULL,NULL),(6,1,'小李',2500.10,'2023-03-14 00:00:00',1,NULL,NULL),(7,0,'陈二狗',2500.90,'2023-03-14 00:00:00',3,NULL,NULL),(15,1,'郭成龙',1800.90,'2023-06-07 00:00:00',1,NULL,NULL),(16,1,'小王',3600.89,'2023-05-02 00:00:00',2,NULL,NULL),(17,0,'马成虫',1000.10,'2023-01-08 00:00:00',2,NULL,NULL),(18,1,'老狗',1100.90,'2023-04-07 00:00:00',3,NULL,NULL),(19,0,'臭弟弟',4500.99,'2023-03-14 00:00:00',1,NULL,NULL),(20,1,'小李',2500.10,'2023-03-14 00:00:00',1,NULL,NULL),(21,0,'陈二狗',2500.90,'2023-03-14 00:00:00',3,NULL,NULL),(22,0,'二狗',NULL,'2023-06-09 11:18:55',NULL,NULL,' CSDN');
/*!40000 ALTER TABLE `emp` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `emp_log`
--

DROP TABLE IF EXISTS `emp_log`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `emp_log` (
  `id` int NOT NULL,
  `name` char(10) NOT NULL DEFAULT '',
  `date` datetime NOT NULL,
  `signin` tinyint NOT NULL DEFAULT '0' COMMENT '登录次数',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `emp_log`
--

LOCK TABLES `emp_log` WRITE;
/*!40000 ALTER TABLE `emp_log` DISABLE KEYS */;
INSERT INTO `emp_log` VALUES (1,'张三','2023-06-22 15:25:33',1),(2,'张三','2023-06-20 15:25:47',3),(3,'王五','2023-06-19 15:26:02',2),(4,'弟弟','2023-06-07 15:26:14',4),(5,'二狗','2023-06-11 15:26:40',4),(6,'二狗','2023-06-04 15:26:54',2);
/*!40000 ALTER TABLE `emp_log` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `goods`
--

DROP TABLE IF EXISTS `goods`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `goods` (
  `id` int NOT NULL AUTO_INCREMENT,
  `category_id` int DEFAULT NULL,
  `category` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
  `name` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL,
  `price` decimal(10,2) DEFAULT NULL,
  `stock` int DEFAULT NULL,
  `upper_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb3 ROW_FORMAT=DYNAMIC;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `goods`
--

LOCK TABLES `goods` WRITE;
/*!40000 ALTER TABLE `goods` DISABLE KEYS */;
INSERT INTO `goods` VALUES (1,1,'女装/女士精品','T恤',39.90,1000,'2020-11-10 00:00:00'),(2,1,'女装/女士精品','连衣裙',79.90,2500,'2020-11-10 00:00:00'),(3,1,'女装/女士精品','卫衣',89.90,1500,'2020-11-10 00:00:00'),(4,1,'女装/女士精品','牛仔裤',89.90,3500,'2020-11-10 00:00:00'),(5,1,'女装/女士精品','百褶裙',29.90,500,'2020-11-10 00:00:00'),(6,1,'女装/女士精品','呢绒外套',399.90,1200,'2020-11-10 00:00:00'),(7,2,'户外运动','自行车',399.90,1000,'2020-11-10 00:00:00'),(8,2,'户外运动','山地自行车',1399.90,2500,'2020-11-10 00:00:00'),(9,2,'户外运动','登山杖',59.90,1500,'2020-11-10 00:00:00'),(10,2,'户外运动','骑行装备',399.90,3500,'2020-11-10 00:00:00'),(11,2,'户外运动','运动外套',799.90,500,'2020-11-10 00:00:00'),(12,2,'户外运动','滑板',499.90,1200,'2020-11-10 00:00:00'),(15,1,'女装/女士精品1','连衣裙1',40.90,2500,'2020-11-10 00:00:00');
/*!40000 ALTER TABLE `goods` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `order_for_goods`
--

DROP TABLE IF EXISTS `order_for_goods`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `order_for_goods` (
  `order_id` int NOT NULL AUTO_INCREMENT,
  `user_id` int DEFAULT NULL,
  `money` decimal(10,2) DEFAULT NULL,
  `quantity` int DEFAULT NULL,
  `join_time` datetime DEFAULT NULL,
  PRIMARY KEY (`order_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=75 DEFAULT CHARSET=utf8mb3 ROW_FORMAT=DYNAMIC;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `order_for_goods`
--

LOCK TABLES `order_for_goods` WRITE;
/*!40000 ALTER TABLE `order_for_goods` DISABLE KEYS */;
INSERT INTO `order_for_goods` VALUES (65,1001,1800.90,1,'2023-06-07 00:00:00'),(66,1001,3600.89,5,'2023-05-02 00:00:00'),(67,1001,1000.10,6,'2023-01-08 00:00:00'),(68,1002,1100.90,9,'2023-04-07 00:00:00'),(69,1002,4500.99,1,'2023-03-14 00:00:00'),(70,1003,2500.10,3,'2023-02-14 00:00:00'),(71,1002,2500.90,1,'2023-03-14 00:00:00'),(72,1003,2500.90,1,'2022-12-12 00:00:00'),(73,1003,2500.90,2,'2022-09-08 00:00:00'),(74,1003,6000.90,8,'2023-01-10 00:00:00');
/*!40000 ALTER TABLE `order_for_goods` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `person_table`
--

DROP TABLE IF EXISTS `person_table`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `person_table` (
  `first_name` char(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `last_name` char(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `sex` char(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`last_name`,`first_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `person_table`
--

LOCK TABLES `person_table` WRITE;
/*!40000 ALTER TABLE `person_table` DISABLE KEYS */;
INSERT INTO `person_table` VALUES ('Thomas','Jay',NULL),('csdn','mr.xiao',NULL);
/*!40000 ALTER TABLE `person_table` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `sequence`
--

DROP TABLE IF EXISTS `sequence`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `sequence` (
  `name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `current_value` int NOT NULL,
  `increment` int NOT NULL DEFAULT '1',
  PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `sequence`
--

LOCK TABLES `sequence` WRITE;
/*!40000 ALTER TABLE `sequence` DISABLE KEYS */;
INSERT INTO `sequence` VALUES ('seq_buz_engineering_task',1,1),('seq_buz_tender_info',2,1),('TestSeq',0,1);
/*!40000 ALTER TABLE `sequence` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `test_transaction`
--

DROP TABLE IF EXISTS `test_transaction`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `test_transaction` (
  `id` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `test_transaction`
--

LOCK TABLES `test_transaction` WRITE;
/*!40000 ALTER TABLE `test_transaction` DISABLE KEYS */;
INSERT INTO `test_transaction` VALUES (5),(6);
/*!40000 ALTER TABLE `test_transaction` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `text_alter`
--

DROP TABLE IF EXISTS `text_alter`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `text_alter` (
  `ids` int DEFAULT NULL,
  `prices` int NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb3;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `text_alter`
--

LOCK TABLES `text_alter` WRITE;
/*!40000 ALTER TABLE `text_alter` DISABLE KEYS */;
/*!40000 ALTER TABLE `text_alter` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `text_copy`
--

DROP TABLE IF EXISTS `text_copy`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `text_copy` (
  `text_id` int unsigned NOT NULL AUTO_INCREMENT,
  `text_title` varchar(100) NOT NULL,
  `text_author` varchar(40) NOT NULL,
  `submission_date` date DEFAULT NULL,
  PRIMARY KEY (`text_id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb3;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `text_copy`
--

LOCK TABLES `text_copy` WRITE;
/*!40000 ALTER TABLE `text_copy` DISABLE KEYS */;
INSERT INTO `text_copy` VALUES (1,'安徒生童话','臭弟弟','2023-06-16'),(2,'小天鹅与丑小鸭','你才是臭弟弟','2023-06-16'),(3,'西游记','我不是臭弟弟','2023-06-16'),(5,'csdn','作者','2023-06-19'),(6,'测试','text','2023-06-19');
/*!40000 ALTER TABLE `text_copy` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `text_null`
--

DROP TABLE IF EXISTS `text_null`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `text_null` (
  `id` int NOT NULL,
  `text_title` char(10) DEFAULT NULL COMMENT '书名',
  `text_author` char(10) DEFAULT NULL COMMENT '作者',
  `price` double DEFAULT NULL COMMENT '价格',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `text_null`
--

LOCK TABLES `text_null` WRITE;
/*!40000 ALTER TABLE `text_null` DISABLE KEYS */;
INSERT INTO `text_null` VALUES (1,'百科全书解决空值','火爆的后槽牙儿',6.66),(2,'这是一本书','小王',NULL),(3,'西游记','作者',NULL);
/*!40000 ALTER TABLE `text_null` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `text_table`
--

DROP TABLE IF EXISTS `text_table`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `text_table` (
  `text_id` int unsigned NOT NULL AUTO_INCREMENT,
  `text_title` varchar(100) NOT NULL,
  `text_author` varchar(40) NOT NULL,
  `submission_date` date DEFAULT NULL,
  PRIMARY KEY (`text_id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb3;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `text_table`
--

LOCK TABLES `text_table` WRITE;
/*!40000 ALTER TABLE `text_table` DISABLE KEYS */;
INSERT INTO `text_table` VALUES (1,'安徒生童话','臭弟弟','2023-06-16'),(2,'小天鹅与丑小鸭','你才是臭弟弟','2023-06-16'),(3,'西游记','我不是臭弟弟','2023-06-16'),(5,'csdn','作者','2023-06-19'),(6,'测试','text','2023-06-19');
/*!40000 ALTER TABLE `text_table` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `text_table2`
--

DROP TABLE IF EXISTS `text_table2`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `text_table2` (
  `text_id` int unsigned NOT NULL AUTO_INCREMENT,
  `text_title` varchar(100) NOT NULL,
  `text_author` varchar(40) NOT NULL,
  `submission_date` date DEFAULT NULL,
  PRIMARY KEY (`text_id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb3;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `text_table2`
--

LOCK TABLES `text_table2` WRITE;
/*!40000 ALTER TABLE `text_table2` DISABLE KEYS */;
INSERT INTO `text_table2` VALUES (1,'安徒生童话','臭弟弟','2023-06-19'),(2,'小天鹅与丑小鸭','你才是臭弟弟','2023-06-19'),(3,'HPH调用','你才是臭弟弟','2023-06-19'),(4,'JAVA入门','我不是臭弟弟','2023-06-19'),(5,'水浒传','你才是臭弟弟','2023-06-19'),(6,'红楼梦','我不是臭弟弟','2023-06-19'),(7,'事实上d','d','2023-06-20'),(8,'鸟','a','2023-06-20');
/*!40000 ALTER TABLE `text_table2` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `users`
--

DROP TABLE IF EXISTS `users`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `users` (
  `id` bigint unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(50) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `email` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `users`
--

LOCK TABLES `users` WRITE;
/*!40000 ALTER TABLE `users` DISABLE KEYS */;
INSERT INTO `users` VALUES (1,'1',NULL),(2,'2',NULL);
/*!40000 ALTER TABLE `users` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2023-06-23 10:25:27

总结:

如果你需要导出某个数据某张表数据,可以使用以下命令: 

mysqldump -uroot -proot 数据库名 表名 > D:\work\mysql\MySQL-Server-8.0\Uploads\product.sql

如果你需要导出整个数据的数据,可以使用以下命令:

mysqldump -uroot -proot product > D:\work\mysql\MySQL-Server-8.0\Uploads\product.sql

如果需要备份所有数据,可以使用以下命令:

mysqldump -u root -p --all-databases > D:\work\mysql\MySQL-Server-8.0\Uploads\database_dump.sql

 mysqldump是MySQL提供的一个命令行工具,用于备份数据库和表。它有许多参数可以用来定制备份的各个方面。

以下是mysqldump的全部参数:

  • -h, --host: 指定备份的MySQL服务器的主机名或IP地址。
  • -u, --user: 指定用于连接MySQL服务器的用户名。
  • -p, --password[=password]: 指定连接MySQL服务器的密码。如果在命令行中指定,将会以明文形式显示密码。
  • -P [port]: 指定MySQL服务器的端口号。默认端口为3306。
  • -S, --socket=[socket]: 指定与MySQL服务器通信的UNIX域套接字。
  • -e, --events: 包括数据库和表的SQL事件。
  • -l, --lock-tables: 在备份开始时锁定所有表。这可以确保备份过程中数据的一致性。
  • -t, --no-data: 只备份表的定义,不包括数据。
  • -b, --backup: 将备份文件保存为.sql和.ini文件,其中包含备份时间和服务器配置信息。
  • -B, --databases: 备份多个数据库。每个数据库之间使用分号分隔。
  • -L, --lock-tables-list: 指定要锁定的表列表。多个表之间使用分号分隔。
  • -b, --backup-dir: 指定备份文件的输出目录。
  • -c, --compress: 在客户端和服务器之间启用压缩,可以提高备份速度和网络效率。
  • -C, --add-drop-database: 在每个备份的开始处添加一个DROP DATABASE语句,以便在恢复时可以重新创建数据库。
  • -C, --add-drop-table: 在每个备份的开始处添加一个DROP TABLE语句,以便在恢复时可以重新创建表。
  • -C, --add-locks: 在备份中包含SELECT ... FOR UPDATE语句,以锁定表以确保备份过程中数据的一致性。
  • -c, --complete-inserts: 使用完整的INSERT语句进行备份,包括列名和值。这可能会导致较长的备份文件,但可以提高恢复时的准确性。
  • -c, --skip-comments: 在备份文件中忽略注释行。
  • --skip-set-charset: 在备份文件中跳过设置字符集的语句。
  • -f, --force: 强制进行备份,即使存在错误或警告。
  • --hex-blob: 将二进制数据以十六进制格式进行备份,以避免字符编码问题。
  • -a, --no-create-info: 在备份中省略表结构的CREATE TABLE语句,只包含数据行的INSERT语句。
  • --skip-triggers: 忽略备份中的触发器信息。
  • --all: 备份所有数据库和表。
  • --single-transaction: 在备份过程中使用单个事务,以确保数据的一致性。
  • --master-data=[log_file_name[,log_pos]]: 在备份中包含主从信息,以便在恢复时可以复制到从数据库中。log_file_name和log_pos是可选参数,用于指定二进制日志文件和位置信息。
  • --slave-data: 在备份中包含从数据库的信息,以便在恢复时可以复制到主数据库中。
  • --no-slave: 禁用从数据库的备份选项。
  • --create-db: 在备份中包含创建数据库的语句。
  • --no-create-db: 在备份中省略创建数据库的语句。
  • --drop-db: 在备份中包含删除数据库的语句。
  • --no-drop-db: 在备份中省略删除数据库的语句。
  • --skip=table_type: 排除指定类型的表进行备份,例如:--skip=binary,--skip=partitioned,--skip=csv。
  • --quote-names: 使用反引号(``)而不是下划线(_)来引用表名和列名。
  • --skip-opt: 禁用优化选项,可能会导致较慢的备份速度和较大的备份文件大小。
  • --quick: 使用“quick”选项进行备份,避免将整个表加载到内存中,从而提高备份速度和减少内存使用情况。
  • --max_allowed_packet: 指定最大允许的包大小,以字节为单位。用于避免大表备份时的内存问题。
  • --net_buffer_length: 指定网络缓冲区长度,以字节为单位。用于控制服务器和客户端之间的数据传输速度和缓冲区大小。

注意:这些参数可以在命令行中使用,也可以在配置文件中进行配置,以满足不同的备份需求

 

3、将数据表及数据库拷贝至其他主机

说明:

       要将MySQL数据表和数据库复制到另一个主机上,可以遵循以下步骤

1、在源主机上备份数据:使用以下命令备份整个数据库或特定的数据表:

mysqldump -u username -p dbname > backupfile.sql

其中,username是数据库用户名,dbname是要备份的数据库名称,backupfile.sql是备份文件的名称。

也可以使用--all-databases选项备份所有数据库:

mysqldump -u username -p --all-databases > backupfile.sql

2、将备份文件传输到目标主机:也可以使用任何文件传输工具,将备份文件传输到目标主机上。

3、在目标主机上恢复数据:使用以下命令将备份文件恢复到目标主机上:

mysql -u username -p dbname < backupfile.sql

其中,username是数据库用户名,dbname是要恢复数据的数据库名称,backupfile.sql是备份文件的名称。如果备份文件中包含多个数据库,您需要逐个恢复它们。
 

也可以使用以下命令将导出的数据直接导入到远程的服务器上,但请确保两台服务器是相通的,是可以相互访问的:

mysqldump -u root -p database_name \
| mysql -h other-host.com database_name

mysqldump是一个用于备份MySQL数据库的工具,而mysql是用于恢复或导入数据到MySQL数据库的工具。在这个命令中,我们将使用mysqldump备份数据库,然后将备份文件通过管道符号|发送给mysql命令,以便在另一个主机上恢复数据库。

具体来命令的参数解释如下:

  • mysqldump -u root -p database_name: 备份名为database_name的数据库,使用root用户登录,并在备份时提示输入密码。
  • |: 管道符号,将前面的输出作为后面的输入。
  • mysql -h other-host.com database_name: 在名为other-host.com的主机上恢复名为database_name的数据库。

综上所述,这个命令将在源主机上备份名为database_name的数据库,然后将备份文件通过管道发送给目标主机上的mysql命令,以便在该主机上恢复相同的数据库。

🎯导入数据

1、mysql  命令导入

  • 使用 MySQL 命令导入语法格式
mysql -u用户名  -p密码   数据库名称 < 要导入的数据库数据(product.sql)
  •  举例如:有一个名为 product.sql 的文件,将 product.sql 中的建表语句和数据,导入到名为 xj 的数据库中。可以使用以下命令导入数据。
mysql -u xiaojian -p  xj < D:/work/mysql/MySQL-Server-8.0/Uploads/product.sql

  以上命令会将备份的整个数据库 product.sql 导入。

  • 执行结果

2、source 命令导入

  • 确保您已经将数据保存在一个 SQL 文件中,例如 product.sql。
  • 打开一个 MySQL 命令行客户端,并连接到相应的 MySQL 服务器。
  • 在 MySQL 命令行客户端中,使用 USE 命令选择要导入数据的数据库
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| product            |
| sys                |
| xj                 |
+--------------------+
6 rows in set (0.00 sec)

mysql> use xj;
Database changed

mysql> show tables;
Empty set (0.00 sec)
  • 执行导入语句 
source D:/work/mysql/MySQL-Server-8.0/Uploads/product.sql
  • 查看结果

 

3、使用 LOAD DATA 导入数据

  • 将本地文件D:/work/mysql/MySQL-Server-8.0/Uploads/goods.txt中的数据导入到MySQL数据库中的goods表
  • MySQL中提供了LOAD DATA INFILE语句来插入数据。 从目录中读取文件 goods.txt ,将该文件中的数据插入到当前数据库的 goods 表中。
  • 如果指定LOCAL关键词,则表明从客户主机上按路径读取文件。如果没有指定,则文件在服务器上按路径读取文件。
LOAD DATA LOCAL INFILE 'D:/work/mysql/MySQL-Server-8.0/Uploads/goods.txt' INTO TABLE goods
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"'
LINES TERMINATED BY '\n';
  1. LOAD DATA LOCAL INFILE 'D:/work/mysql/MySQL-Server-8.0/Uploads/goods.txt': 这部分指定了要导入的文件的路径和文件名。
  2. INTO TABLE goods: 这部分指定了要将数据导入到哪个表中,这里是goods表。
  3. FIELDS TERMINATED BY ',': 这部分指定了字段之间的分隔符,这里使用逗号作为分隔符。
  4. ENCLOSED BY '"': 这部分指定了字段值的引用符,这里使用双引号作为引用符。
  5. LINES TERMINATED BY '\n': 这部分指定了行之间的分隔符,这里使用回车换行符作为分隔符。
  • 导入的数据文本goods.txt格式
"1","1","女装/女士精品","T恤","39.90","1000","2020-11-10 00:00:00"
"3","1","女装/女士精品","卫衣","89.90","1500","2020-11-10 00:00:00"
"5","1","女装/女士精品","百褶裙","29.90","500","2020-11-10 00:00:00"
"7","2","户外运动","自行车","399.90","1000","2020-11-10 00:00:00"
"9","2","户外运动","登山杖","59.90","1500","2020-11-10 00:00:00"
"11","2","户外运动","运动外套","799.90","500","2020-11-10 00:00:00"
"15","1","女装/女士精品1","连衣裙1","40.90","2500","0000-00-00 00:00:00"

错误:

  • 这个错误提示意味着正在尝试加载本地数据,但是 MySQL 服务器禁用了这个功能。
ERROR 3948 (42000): Loading local data is disabled; this must be enabled on both the client and server sides

 ERROR 3948(42000):加载本地数据已被禁用;必须在客户端和服务器端同时启用此功能。

解决:

  • 确保 MySQL 服务器已经启动并且可以访问。
  • 打开一个 MySQL 命令行客户端,并连接到相应的 MySQL 服务器。
  • 在 MySQL 命令行客户端中,执行以下命令来启用加载本地数据的功能。
SET GLOBAL local_infile = ON;
  • 重新运行您的 SQL 脚本,应该能够成功导入本地数据。

4、使用 mysqlimport 导入数据

  • 基本语法
mysqlimport [options] db_name file_name

db_name是要导入数据的数据库名称,file_name是包含数据的文件名。options是可选的参数,用于指定一些导入选项。

  • 使用mysqlimport 命令指定选项来设置指定格式导入
mysqlimport -u xiaojian -p --local --fields-terminated-by="," --lines-terminated-by="\n"  xj D:/work/mysql/MySQL-Server-8.0/Uploads/goods.txt

  • 导入的数据文本goods.txt格式
1,1,女装/女士精品,T恤,39.90,1000,2020-11-10 00:00:00
3,1,女装/女士精品,卫衣,89.90,1500,2020-11-10 00:00:00
5,1,女装/女士精品,百褶裙,29.90,500,2020-11-10 00:00:00
7,2,户外运动,自行车,399.90,1000,2020-11-10 00:00:00
9,2,户外运动,登山杖,59.90,1500,2020-11-10 00:00:00
11,2,户外运动,运动外套,799.90,500,2020-11-10 00:00:00
15,1,女装/女士精品1,连衣裙1,40.90,2500,0000-00-00 00:00:00

  • 关于MySQL导入选项说明。
  1. --print-defaults:打印程序参数列表并退出。
  2. --no-defaults:除了登录文件外,不要从任何选项文件中读取默认选项。
  3. --defaults-file=#:只从给定的文件#中读取默认选项。
  4. --defaults-extra-file=#:在全局文件读取之后读取该文件。
  5. --defaults-group-suffix=#:同时从带有连接组和后缀的组中读取。
  6. --login-path=#:从登录文件中读取此路径。
  7. --bind-address=name:绑定到IP地址。
  8. --character-sets-dir=name:字符集文件目录。
  9. --default-character-set=name:设置默认字符集。
  10. -c--columns=name:只使用这些列将数据导入。以逗号分隔列名列表。
  11. -C--compress:在服务器/客户端协议中使用压缩。
  12. -#--debug[=#]:非调试版本。捕获并退出。
  13. --debug-check:非调试版本。捕获并退出。
  14. --debug-info:非调试版本。捕获并退出。
  15. --default-auth=name:默认的客户端侧身份验证插件。
  16. -d--delete:首先删除表中的所有行。
  17. --enable-cleartext-plugin:启用/禁用明文身份验证插件。
  18. --fields-terminated-by=name:输入文件中的字段以给定字符串终止。
  19. --fields-enclosed-by=name:导入文件中的字段由给定字符封闭。
  20. --fields-optionally-enclosed-by=name:输入文件中的字段可选择地由给定字符封闭。
  21. --fields-escaped-by=name:字段在输入文件中由给定字符转义。
  22. -f 和 --force:即使遇到 SQL 错误,也要继续执行。
  23. -? 和 --help:显示帮助信息并退出。
  24. -h 和 --host=name:连接到的主机名。
  25. -i 和 --ignore:如果发现重复的唯一键,则保留旧行。
  26. --ignore-lines=#:忽略数据文件中的前 n 行。
  27. --lines-terminated-by=name:输入文件中的行以给定字符串终止。
  28. -L 和 --local:通过客户端读取所有文件。
  29. -l 和 --lock-tables:锁定所有表以进行写入(这将禁用线程)。
  30. --low-priority:使用 LOW_PRIORITY 更新表时使用。
  31. -p 和 --password[=name]:连接服务器时使用的密码。如果未指定密码,则从终端询问。
  32. -W 和 --pipe:使用命名管道连接到服务器。
  33. --plugin-dir=name:客户端插件的目录。
  34. -P 和 --port=#:用于连接的端口号,或者优先顺序为 my.cnf、$MYSQL_TCP_PORT、/etc/services 和内置默认值(3306)中的默认端口号。
  35. --protocol=name:用于连接的协议(tcp、socket、pipe、memory)。
  36. -r 和 --replace:如果发现重复的唯一键,则替换旧行。
  37. --secure-auth:如果客户端使用旧版(4.1.1 之前)协议,则拒绝连接到服务器。已过时。始终为 TRUE。
  38. --shared-memory-base-name=name:共享内存的基名称。
  39. -s 和 --silent:更加沉默。
  40. -S 和 --socket=name:用于连接的套接字文件。
  41. --ssl-mode=name:SSL 连接模式。
  42. --ssl:已过时。请使用 --ssl-mode 代替。
  43. --ssl-verify-server-cert:已过时。请使用 --ssl-mode=VERIFY_IDENTITY 代替。
  44. --ssl-ca=name:CA 文件,以 PEM 格式。
  45. --ssl-capath=name:CA 目录。
  46. --ssl-cert=name:X509 证书,以 PEM 格式。
  47. --ssl-cipher=name:要使用的SSL密码。
  48. --ssl-key=name:X509密钥,以PEM格式。
  49. --ssl-crl=name:证书撤销列表。
  50. --ssl-crlpath=name:证书撤销列表路径。
  51. --tls-version=name:要使用的TLS版本,允许的值有:TLSv1、TLSv1.1、TLSv1.2。
  52. --server-public-key-path=name:服务器公共RSA密钥的文件路径,以PEM格式。
  53. --get-server-public-key:获取服务器公共密钥。
  54. --use-threads=#:并行加载文件的线程数。
  55. -u,--user=name:用于登录的用户,如果不是当前用户。
  56. -v,--verbose:打印各个阶段的信息。
  57. -V,--version:输出版本信息并退出。

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

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

相关文章

Kotlin~Template模版方法模式

概念 定义算法骨架、代码模版 角色介绍 Abstract ClassConcrete Class UML 代码实现 abstract class Game {protected abstract fun initialize()protected abstract fun startPlay()protected abstract fun endPlay()// 模版fun play(){initialize()startPlay()endPlay()…

Spring面试题--Spring中事务失效的场景有哪些

Spring中事务失效的场景有哪些&#xff1f; 异常捕获处理 Transactional public void update(Integer from, Integer to, Double money) {try {//转账的用户不能为空Account fromAccount accountDao.selectById(from);//判断用户的钱是否够转账if (fromAccount.getMoney() - …

idea运行项目时右下角一直提示Lombok requires enabled annotation processing

出现这个错误是因为使用了Lombok插件的原因&#xff0c;可能是安装时候没有配置好 Lombok requires enabled annotation processing&#xff1a;翻译过来就是Lombok 需要启用注释处理 解决方案 File -> Settings ->Build,Execution,Deployment -> Compiler ->An…

35岁程序员现状,太真实!

“未来每年&#xff0c;我们将会为社会输送1000名工作10年以上的人才。” 这是之前马云在演讲中提到的关于阿里巴巴这样的大厂老员工的问题。总的来讲就是——“毕业”。 也经常能够看到在各个平台有程序员讲到自己35岁的焦虑。 之前&#xff0c;在某平台上就有一个有意思的…

Redis主从复制模式3

谋权篡位 假设在一个Redis集群中&#xff0c;有一台主机和两台从机构成一个Redis集群。此时因外部原因&#xff0c;导致主机宕机&#xff0c;俗话说 “国不可⼀一日无君&#xff0c;军不可一日无帅”&#xff0c;那么需要从剩余的两台从机中再次选出一台主机&#xff0c;从而来…

【小沐学Unity3d】Unity插件之绳索模拟Obi Rope

文章目录 1、简介2、安装3、示例测试3.1 Chains3.2 Crane3.3 ElectricalWires3.4 FreightLift3.5 Rocker3.6 RopeAndJoints3.7 RopeShowcase 4、简单测试结语 1、简介 https://assetstore.unity.com/packages/tools/physics/obi-rope-55579 Obi 是一款基于粒子的高级物理引擎…

本地部署 Chatbot UI,一个开源的 ChatGPT UI

openchat-ui 0. 什么是 Chatbot UI1. Github 地址2. 本地部署3. (参考)配置文件说明 0. 什么是 Chatbot UI Chatbot UI 是一个用于 AI 模型的开源聊天 UI。适用于 OpenChat 模型。 画面效果展示如下&#xff0c; 1. Github 地址 https://github.com/imoneoi/openchat-ui 2.…

Docker安装RabbitMQ docker安装RabbitMQ完整详细教程

Docker安装RabbitMQ docker安装RabbitMQ完整详细教程 Docker 上安装 RabbitMQ 3.12 的步骤&#xff1a;选择要安装的RabbitMQ 版本1、拉取 RabbitMQ 镜像2、创建并运行容器3、RabbitMQ 常用端口以及作用4、访问 管理页面测试&#xff0c;是否启动成功关闭容器启动容器 5、Docke…

OpenResty cosocket

cosocket 是各种 lua-resty-* 非阻塞库的基础 cosocket coroutine socket 需要 Lua 协程特性的支持&#xff0c;也需要 Nginx 事件机制的支持&#xff0c;两者结合在一起实现非阻塞网络 I/O。 遇到网络 I/O 时会交出控制权&#xff0c;把网络事件注册到 Nginx 监听列表中&a…

OpenSSH 用户枚举漏洞(CVE-2018-15473) 漏洞修复

OpenSSH 用户枚举漏洞&#xff08;CVE-2018-15473&#xff09;漏洞修复 1 漏洞说明2 漏洞修复3 相关问题 1 漏洞说明 2 漏洞修复 查看当前openssh版本&#xff1a; [rootizr0a05u4qferpr7yfhtotz ~]# ssh -V OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017 [rootizr0a05u4…

ChatGLM-6B一键安装,马上使用(windows)!!

产品特点 双语&#xff1a; 同时支持中文和英文。 高精度&#xff08;英文&#xff09;&#xff1a; 在公开的英文自然语言榜单 LAMBADA、MMLU 和 Big-bench-lite 上优于 GPT-3 175B&#xff08;API: davinci&#xff0c;基座模型&#xff09;、OPT-175B 和 BLOOM-176B。 高…

MiniKube安装教程,简易版k8s,带你用最简单的方法体验k8s(学习环境通用)

Minikube安装教程 minikube 是本地 Kubernetes&#xff0c;专注于让 Kubernetes 易于学习和开发&#xff0c;这能很方便的在本地进行k8s学习&#xff0c;减轻初学者对于k8s的安装困难。&#xff08;信我&#xff0c;新手入门k8s就用这个够用了&#xff01;先别去折腾生产环境的…

[pyqt5]右键窗口弹出菜单并触发菜单点击事件

from PyQt5.Qt import * import sysclass MyWindow(QWidget):# 自定义窗体def contextMenuEvent(self, evt: QContextMenuEvent) -> None:menu QMenu(self)new_action QAction(打开, menu)new_action.triggered.connect(self.open)close_action QAction(关闭, menu)close…

Jupyter的安装与启动

一、简介 Jupyter Notebook&#xff08;此前被称为 IPython notebook&#xff09;是一个交互式笔记本&#xff0c;支持运行 40 多种编程语言。 Jupyter Notebook是一个开源的Web应用程序&#xff0c;允许用户创建和共享包含代码、方程式、可视化和文本的文档&#xff0c;支持…

【编码魔法师系列_六大原则2】里氏替换原则(Liskov Substitution Principle LSP Principle)

学会设计模式&#xff0c;你就可以像拥有魔法一样&#xff0c;在开发过程中解决一些复杂的问题。设计模式是由经验丰富的开发者们&#xff08;GoF&#xff09;凝聚出来的最佳实践&#xff0c;可以提高代码的可读性、可维护性和可重用性&#xff0c;从而让我们的开发效率更高。通…

BKP备份寄存器RTC实时时钟

BKP本质上是RAM寄存器&#xff0c;不能完全掉电不丢失&#xff0c;它的数据需要VBAT引脚提供的备用电源来维持。RTC复位和掉电不丢失是通过BKP来实现的。 目录 Unix时间戳 简介 计时标准​编辑 时间戳转换​编辑 示例代码 BKP 简介 BKP基本结构 RTC RTC简介 RTC框图 RT…

【100个 Unity实用技能】 | Unity中Text文本框 和 InputField文本输入框 内容换行问题【文末送书】

&#x1f3ac; 博客主页&#xff1a;https://xiaoy.blog.csdn.net &#x1f3a5; 本文由 呆呆敲代码的小Y 原创&#xff0c;首发于 CSDN&#x1f649; &#x1f384; 学习专栏推荐&#xff1a;Unity系统学习专栏 &#x1f332; 游戏制作专栏推荐&#xff1a;游戏制作 &…

【深度学习】神经网络初学者指南

一、说明 这是一篇对神经网络的泛泛而谈的文章&#xff0c;我的意见是&#xff0c;先知道框架&#xff0c;而后知道每一个细节&#xff0c;这是学习人工智能的基本路线。本文就神经网络而言&#xff0c;谈到一些基础概念&#xff0c;适应于初学者建立概念。 二、神经网络定义 神…

初学Spring boot (一) Hello,World!

SpringBoot简介 回顾什么是Spring? Spring是一个开源框架&#xff0c;2003 年兴起的一个轻量级的Java 开发框架&#xff0c;作者&#xff1a;Rod Johnson 。 Spring是为了解决企业级应用开发的复杂性而创建的&#xff0c;简化开发。 Spring是如何简化Java开发的 为了降低Java…

element 表格

实现效果&#xff1a; 需求&#xff1a; 1. 左侧新增分类功能添加数据到左侧分类表格中。 2. 分类表格可以编辑和删除。 3. 右侧添加标签功能&#xff0c;添加标签至所属分类中。 4.右侧表格显示分类与所挂在当前分类下的所有标签。 5. 右侧表格内删除按钮&#xff0c;删除…