SQLSERVER 恢复命令restore总结(recovery for sql server还原)
liuian 2025-03-24 17:59 14 浏览
一、概述
SQLSERVER的备份与恢复命令:BACKUP和RESTORE是一对孪生兄弟,在前一篇文章中我们介绍了BACKUP命令及其选项的使用,
就像 BACKUP 命令一样,RESTORE 命令也有很多的选项,理解和掌握这些选项的含义是SQLSERVER成功恢复所必需的。
二、命令
2.1 RESTORE命令
2.1.1 RESTORE HEADERONLY
RESTORE HEADERONLY 选项允许您查看特定备份设备的所有备份的备份头信息。在大多数情况下,您创建的每个备份只有一个备份存储在物理文件中,因此您可能只会看到一个标题记录,但如果您在一个文件中有多个备份,您会看到每个备份的信息。
T-SQL
RESTORE HEADERONLY FROM DISK = 'C:\AdventureWorks.BAK'
GO
结果集如下所示,使用 HEADERONLY 时会返回很多重要信息。
SQL Server Management Studio
- 右键单击数据库
- 选择“恢复数据库...”
- 选择“从设备:”,然后单击“...”
- 单击“添加”并选择后备文件,在本例中为“C:\AdventureWorks.BAK”并单击“确定”
- 再次点击“确定”可以看到备份文件的内容,下图可以看到这个文件有两个备份
2.1.2 RESTORE LABELONLY
RESTORE LABELONLY允许您查看备份设备的备份介质信息。因此,如果备份设备(例如备份文件)有多个备份,您将只能获得一条记录,该记录会为您提供有关介质集的信息,例如用于创建备份的软件、介质的创建日期等。
T-SQL
RESTORE LABELONLY FROM DISK = 'C:\AdventureWorks.BAK'
GO
结果集如下所示,使用 LABELONLY 时会返回很多重要信息。
2.1.3 RESTORE FILELISTONLY
RESTORE FILELISTONLY 选项允许您查看已备份文件的列表。因此,例如,如果您有完整备份,您将看到所有数据文件 (mdf) 和日志文件 (ldf)。此信息只能使用 T-SQL 返回,无法从 SQL Server Management Studio 获取此信息。RESTORE FILELISTONLY 选项可以简单列出备份中包含的文件,如果一个文件中有多个备份并且您没有指定“WITH FILE = X”,您将只能获得文件中第一个备份的信息。要获取文件编号,请使用 RESTORE HEADERONLY。
T-SQL
RESTORE FILELISTONLY FROM DISK = 'C:\AdventureWorks.BAK' WITH FILE = 1
GO
结果集如下所示。这里有用的东西包括LogicalName 和PhysicalName。
2.1.4 RESTORE DATABASE
RESTORE DATABASE 选项允许您恢复完整、差异、文件或文件组备份。恢复数据库时需要对数据库进行独占访问,这意味着没有其他用户连接可以使用该数据库。可以使用 T-SQL 或使用 SQL Server Management Studio 完成 RESTORE DATABASE 选项。
T-SQL
恢复完整备份
这将使用指定文件恢复数据库。如果数据库已经存在,它将覆盖文件。如果数据库不存在,它将创建数据库并将文件恢复到备份中指定的相同位置。可以使用RESTORE FILELISTONLY检查原始位置。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
GO
恢复完整备份允许额外的恢复,例如差异或事务日志备份 (NORECOVERY)
NORECOVERY 选项在恢复完成后使数据库处于恢复状态。这允许您恢复其他文件以使数据库更新。默认情况下,此选项处于关闭状态。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK' WITH NORECOVERY
GO
恢复差异备份
要恢复差异备份,必须首先使用 NORECOVERY 选项进行完全恢复。然后才可以恢复差异。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK' WITH NORECOVERY
GO
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.DIF'
GO
使用具有多个备份的备份文件进行还原
假设我们使用同一个备份文件 AdventureWorks.BAK 来存储完整备份和差异备份。我们可以使用RESTORE HEADERONLY来查看备份和备份文件中的位置。假设恢复标头只告诉我们在位置 1 我们有完整备份,在位置 2 我们有差异备份。恢复命令将是。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK' WITH NORECOVERY, FILE = 1
GO
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK' WITH FILE = 2
GO
2.1.5 RESTORE LOG
RESTORE LOG 命令允许您恢复事务日志备份。这些选项包括恢复整个事务日志或恢复到某个时间点或某个事务标记。为了还原事务日志备份,数据库必须处于还原状态,这意味着首先使用 NORECOVERY 选项还原完整备份或完整备份和差异备份,以允许额外的备份,例如还原事务日志备份。
恢复事务日志时,您将需要对数据库的独占访问权限,这意味着没有其他用户连接可以使用该数据库。如果数据库处于恢复状态,这不是问题,因为没有人可以使用该数据库。
可以使用 T-SQL 或使用 SQL Server Management Studio 完成 RESTORE LOG 选项。
T-SQL
恢复事务日志备份
要恢复事务日志备份,数据库需要处于恢复状态。这意味着您必须恢复完整备份,可能还需要恢复差异备份。
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
GO
还原多个事务日志文件 (NORECOVERY)
NORECOVERY 选项在还原完成后使数据库处于还原状态。这允许您恢复其他文件以使数据库更新。默认情况下,此选项处于关闭状态。例如需要恢复两个事务日志备份,第一个使用 NORECOVERY 而第二个语句不使用,这意味着在恢复完成后可以访问数据库。
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks_1.TRN' WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks_2.TRN'
GO
从同一个备份文件恢复多个事务日志备份
假设我们使用同一个备份文件 AdventureWorks.TRN 来写入我们所有的事务日志备份。这不是最佳做法,因为如果文件已损坏,则可能会损坏此文件中的所有备份。我们可以使用RESTORE HEADERONLY来查看备份和备份文件中的位置。假设恢复标头只告诉我们这个文件中有 3 个事务日志备份,我们想要恢复全部。
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN' WITH NORECOVERY, FILE = 1
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN' WITH NORECOVERY, FILE = 2
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN' WITH FILE = 3
GO
2.1.6 RESTORE VERIFYONLY
RESTORE VERIFYONLY 命令检查备份以确保它是完整的并且整个备份是可读的。不执行实际还原,而是读取文件以确保 SQL Server 在需要使用此备份进行还原时可以读取它。RESTORE VERIFYONLY 选项是备份完成后检查每个备份的不错选择。不幸的是,这需要额外的处理时间才能完成,但这是一个很好的实践。以下是您可以使用 T-SQL 和 SSMS 执行此操作的方法。
T-SQL
检查磁盘上的备份文件
RESTORE VERIFYONLY 命令将检查备份文件并返回文件是否有效的消息。如果它无效,这意味着该文件不能用于恢复,并且应该进行新的备份。需要注意的一点是,如果一个文件中有多个备份,它只检查第一个文件。
RESTORE VERIFYONLY FROM DISK = C:\AdventureWorks.BAK
GO
检查磁盘上的备份文件是否有特定备份
此命令将检查此备份文件中的第二个备份。要检查备份中的内容,您可以使用RESTORE HEADERONLY并使用 Position 列指定 FILE 编号。
RESTORE VERIFYONLY FROM DISK = C:\AdventureWorks.BAK WITH FILE = 2
GO
SQL Server Management Studio
使用维护计划或通过 SSMS 创建备份时,您可以选择打开 RESTORE VERIFYONLY 选项,如下所示。这可以对所有备份类型进行。
2.2 Restore 选项
除了我们前面已经讨论过的命令之外,Restore还有许多其他选项可以与这些命令一起使用。
- RECOVERY
- NORECOVERY
- STATS
- REPLACE
- MOVE
- STOPAT
2.2.1 RECOVERY
RESTORE ... WITH RECOVERY 选项将数据库置于可用状态,因此用户可以访问已恢复的数据库。 当您发出 RESTORE DATABASE 或 RESTORE LOG 命令时,默认使用 WITH RECOVERY 选项。无需指定此选项即可执行此操作。
如果您恢复“完整”备份,则默认设置为 RESTORE WITH RECOVERY,因此在数据库恢复后,您的最终用户可以使用它。
如果您正在使用多个备份文件还原数据库,您需要使用 WITH NORECOVERY 选项进行除最后一次之外的每个还原。
如果您的数据库仍处于恢复状态,并且您想在不恢复其他备份的情况下恢复它,您可以发出 RESTORE DATABASE .. WITH RECOVERY 使数据库联机供用户使用。
T-SQL
恢复处于 RECOVERY状态 如上所述,此选项是默认选项,但您可以按如下方式指定。此选项是默认选项,但您可以按如下方式指定。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH RECOVERY
GO
对上次备份使用 WITH RECOVERY 恢复多个备份 第一次恢复使用 NORECOVERY 选项,因此可以进行额外的恢复。第二个命令恢复事务日志,然后使数据库联机以供最终用户使用。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
WITH RECOVERY
GO
SQL Server Management Studio
使用 SSMS 恢复时,默认使用 WITH RECOVERY 选项,因此无需设置任何内容,但可以在恢复时在选项页面上设置或更改。
2.2.2 NORECOVERY
RESTORE ... WITH NORECOVERY 选项将数据库置于“正在恢复”状态,因此可以恢复其他备份。当数据库处于“正在恢复”状态时,没有用户可以访问数据库或数据库的内容。
当您发出 RESTORE DATABASE 或 RESTORE LOG 命令时,WITH NORECOVERY 选项允许您在恢复数据库之前恢复其他备份文件。因此,这允许您在让最终用户访问数据之前尽可能获取最新的数据库。
此选项默认不启用,因此如果您需要通过恢复多个备份文件来恢复数据库而忘记使用此选项,则必须重新开始备份过程。
最常见的示例是恢复“完整”备份和一个或多个“事务日志”备份。
T-SQL
恢复完整备份和一个事务日志备份 第一个命令执行恢复并使数据库处于恢复状态,第二个命令恢复事务日志备份,然后使数据库可用。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
WITH RECOVERY
GO
还原完整备份和两个事务日志备份
首先使用 NORECOVERY 还原前两个备份,然后使用 RECOVERY 进行最后一次还原。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks2.TRN'
WITH RECOVERY
GO
还原完整备份、最新差异备份和两个事务日志备份
使用 NORECOVERY 还原前三个备份,然后使用 RECOVERY 进行最后还原。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH NORECOVERY
GO
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.DIF'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks2.TRN'
WITH RECOVERY
GO
SQL Server Management Studio
要使用 WITH NORECOVERY 选项恢复数据库备份,请转到选项页面并选择下面突出显示的项目。
2.2.3 STATS
RESTORE WITH STATS 选项允许您查看还原过程的进度,这个选项也可用于 RESTORE DATABASE、RESTORE LOG、RESTORE VERIFYONLY。RESTORE WITH STATS 选项将让您了解当前还原过程的进度。此信息以完成百分比表示。默认是每 10% 后显示,或者可以指定百分比值。
T-SQL
使用默认统计设置恢复完整数据库 以下将显示每个 10% 段后的完成百分比。
RESTORE DATABASE 'AdventureWorks' FROM DISK = 'C:\AdventureWorks.BAK'
GO
恢复完整的数据库,每完成 1% 就会显示统计信息 这将在每完成 1% 后显示进度。
RESTORE DATABASE 'AdventureWorks' FROM DISK = 'C:\AdventureWorks.BAK' WITH STATS = 1
GO
SQL Server Management Studio
使用 SSMS 还原数据库时,此信息将显示在下面突出显示的部分中。默认值为 10%, GUI 中不能更改。
2.2.4 REPLACE
RESTORE ... WITH REPLACE 选项允许您在进行还原时覆盖现有数据库。在某些情况下,当您尝试进行还原时,您可能会收到一条错误消息,提示“数据库的日志尾部 .. 尚未备份”。
RESTORE ... WITH REPLACE 允许您在执行还原时覆盖现有数据库,而无需先备份事务日志的尾部。WITH REPLACE 基本上告诉 SQL Server 丢弃事务日志中的所有活动内容并继续进行还原。
T-SQL
使用 WITH REPLACE 恢复完整备份 下面的命令将恢复数据库并忽略当前事务日志中的任何活动数据。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH REPLACE
GO
SQL Server Management Studio
要使用 SSMS 进行还原,请执行以下操作,在还原的选项页面上选择“覆盖现有数据库”。
2.2.5 MOVE
RESTORE ... WITH MOVE 选项允许您恢复数据库,但也可以指定数据库文件(mdf 和 ldf)的新位置。如果您要从该数据库的备份还原现有数据库,则不需要这样做,但如果您要从具有不同文件位置的不同实例还原数据库,则可能需要使用此选项。
RESTORE ... WITH MOVE 选项将让您确定数据库文件的名称以及创建这些文件的位置。在使用此选项之前,您需要知道这些文件的逻辑名称以及 SQL Server 的位置。
如果已经存在另一个使用您尝试还原的相同文件名的数据库并且该数据库处于联机状态,则还原将失败。但是如果数据库由于某种原因不在线并且文件没有打开,如果你不使用 WITH MOVE 选项,恢复将覆盖这些文件,所以要小心你不要意外覆盖好的数据库文件。
此外,当使用 WITH MOVE 选项时,您需要确保用于 SQL Server 引擎的帐户有权在您指定的文件夹中创建这些文件。
T-SQL
1、确定备份的内容
您需要做的第一件事是确定文件的逻辑名称和物理位置。这可以通过使用RESTORE FILELISTONLY命令来完成。这将为您提供逻辑名称和物理名称。
例如:
RESTORE FILELISTONLY FROM DISK = 'C:\AdventureWorks.BAK'
GO
ColumnName | Value - Row 1 | Value - Row2 |
LogicalName | AdventureWorks_Data | AdventureWorks_Log |
PhysicalName | C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_Data.mdf | C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\AdventureWorks_Log.ldf |
Type | D | L |
2、使用 MOVE 恢复完整备份
假设我们要恢复这个数据库,但我们希望将数据文件放在“G:\SQLData”文件夹中,将事务日志文件放在“H:\SQLLog”文件夹中。该命令如下所示:
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH MOVE 'AdventureWorks_Data' TO 'G:\SQLData\AdventureWorks_Data.mdf',
MOVE 'AdventureWorks_Log' TO 'H:\SQLLog\AdventureWorks_Log.ldf'
GO
还原完整和事务日志备份 WITH MOVE 只需为第一次还原指定 WITH MOVE,因为此后数据库将处于“还原”状态。第二次还原只会将内容写入正在使用的这个新位置。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH MOVE 'AdventureWorks_Data' TO 'G:\SQLData\AdventureWorks_Data.mdf',
MOVE 'AdventureWorks_Log' TO 'H:\SQLLog\AdventureWorks_Log.ldf',
NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
GO
SQL Server Management Studio
要使用 SSMS 进行还原,请执行以下操作,在还原的选项页面上,更改每个文件的“还原为:”值,如下所示。下面将还原到根文件夹,但您可以根据需要将它们更改为 G:\SQLData\ 和 H:\SQLLog\。
2.2.6 STOPAT
RESTORE ... WITH STOPAT 选项允许您将数据库恢复到某个时间点。为了使此选项起作用,数据库需要处于 FULL 或 Bulk-Logged 恢复模式,并且您需要进行事务日志备份。
当数据写入数据库时,它首先写入事务日志,然后在事务完成后写入数据文件。还原事务日志时,SQL Server 将重播事务日志中的所有事务,并在将数据库置于可用状态之前前滚或回滚它需要的事务。
这些事务每一个都有一个 LSN(逻辑序列号)和一个时间戳,因此在还原事务日志时,您可以告诉 SQL Server 在哪里停止读取需要还原的事务。
需要注意的一点是,如果您的数据库使用 Bulk-Logged 恢复模型,并且事务日志中存在最小记录操作(例如批量插入),则您无法使用该事务日志进行时间点恢复。
T-SQL
使用 STOPAT 还原数据库 这会将 AdventureWorks 数据库还原到等于“2022 年 10 月 23 日下午 5:31”的时间点。
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
WITH RECOVERY,
STOPAT = 'Oct 23, 2022 05:31:00 PM'
GO
使用 STOPAT 恢复数据库,其中恢复模式为 Bulk-Logged 并且存在最低限度记录的操作
在此示例中,我们有一个完整备份并且事务日志具有最低限度记录的操作。我们可以尝试使用以下命令进行时间点恢复:
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
WITH NORECOVERY
GO
RESTORE LOG AdventureWorks FROM DISK = 'C:\AdventureWorks.TRN'
WITH RECOVERY,
STOPAT = 'Oct 23, 2022 05:31:00 PM'
GO
但是如果有批量操作我们会得到这个错误。
恢复操作将完成,但它会恢复整个事务日志备份并使数据库处于“正在恢复”状态。然后,您可以恢复其他事务日志或使用RESTORE .. WITH RECOVERY选项使数据库重新联机。
2.2.7 独占数据库访问权限
还原数据库时,您需要做的一件事是确保您拥有对数据库的独占访问权限。如果数据库中有任何其他用户,则还原将失败。
获得独家访问权
要获得独占访问权限,需要删除所有其他连接或更改它们所在的数据库,以便它们不使用您尝试恢复的数据库。您可以使用sp_who2或SSMS查看哪些连接正在使用您尝试恢复的数据库。
使用 KILL 获得独占访问权的一个选项是使用 KILL 命令来终止正在使用数据库的每个连接。但要注意您要终止的连接以及可能需要发生的回滚问题。
使用 ALTER DATABASE 另一种选择是将数据库置于单用户模式,然后进行恢复。这也会根据您使用的选项进行回滚,但会一次完成所有连接。
ALTER DATABASE AdventureWorks SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'
GO
三、小结
本文详解了SQLSERVER数据库恢复命令restore的使用方法和常见选项,结合具体的例子,简单明了,对于数据库恢复原理和实战有一个令人深刻的认识。
相关推荐
- 总结下SpringData JPA 的常用语法
-
SpringDataJPA常用有两种写法,一个是用Jpa自带方法进行CRUD,适合简单查询场景、例如查询全部数据、根据某个字段查询,根据某字段排序等等。另一种是使用注解方式,@Query、@Modi...
- 解决JPA在多线程中事务无法生效的问题
-
在使用SpringBoot2.x和JPA的过程中,如果在多线程环境下发现查询方法(如@Query或findAll)以及事务(如@Transactional)无法生效,通常是由于S...
- PostgreSQL系列(一):数据类型和基本类型转换
-
自从厂子里出来后,数据库的主力就从Oracle变成MySQL了。有一说一哈,贵确实是有贵的道理,不是开源能比的。后面的工作里面基本上就是主MySQL,辅MongoDB、ES等NoSQL。最近想写一点跟...
- 基于MCP实现text2sql
-
目的:基于MCP实现text2sql能力参考:https://blog.csdn.net/hacker_Lees/article/details/146426392服务端#选用开源的MySQLMCP...
- ORACLE 错误代码及解决办法
-
ORA-00001:违反唯一约束条件(.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。ORA-00017:请求会话以设置跟踪事件ORA-00018:超出最大会话数ORA-00...
- 从 SQLite 到 DuckDB:查询快 5 倍,存储减少 80%
-
作者丨Trace译者丨明知山策划丨李冬梅Trace从一开始就使用SQLite将所有数据存储在用户设备上。这是一个非常不错的选择——SQLite高度可靠,并且多种编程语言都提供了广泛支持...
- 010:通过 MCP PostgreSQL 安全访问数据
-
项目简介提供对PostgreSQL数据库的只读访问功能。该服务器允许大型语言模型(LLMs)检查数据库的模式结构,并执行只读查询操作。核心功能提供对PostgreSQL数据库的只读访问允许L...
- 发现了一个好用且免费的SQL数据库工具(DBeaver)
-
缘起最近Ai不是大火么,想着自己也弄一些开源的框架来捣腾一下。手上用着Mac,但Mac都没有显卡的,对于学习Ai训练模型不方便,所以最近新购入了一台4090的拯救者,打算用来好好学习一下Ai(呸,以上...
- 微软发布.NET 10首个预览版:JIT编译器再进化、跨平台开发更流畅
-
IT之家2月26日消息,微软.NET团队昨日(2月25日)发布博文,宣布推出.NET10首个预览版更新,重点改进.NETRuntime、SDK、libraries、C#、AS...
- 数据库管理工具Navicat Premium最新版发布啦
-
管理多个数据库要么需要使用多个客户端应用程序,要么找到一个可以容纳你使用的所有数据库的应用程序。其中一个工具是NavicatPremium。它不仅支持大多数主要的数据库管理系统(DBMS),而且它...
- 50+AI新品齐发,微软Build放大招:拥抱Agent胜算几何?
-
北京时间5月20日凌晨,如果你打开微软Build2025开发者大会的直播,最先吸引你的可能不是一场原本属于AI和开发者的技术盛会,而是开场不久后的尴尬一幕:一边是几位微软员工在台下大...
- 揭秘:一条SQL语句的执行过程是怎么样的?
-
数据库系统能够接受SQL语句,并返回数据查询的结果,或者对数据库中的数据进行修改,可以说几乎每个程序员都使用过它。而MySQL又是目前使用最广泛的数据库。所以,解析一下MySQL编译并执行...
- 各家sql工具,都闹过哪些乐子?
-
相信这些sql工具,大家都不陌生吧,它们在业内绝对算得上第一梯队的产品了,但是你知道,他们都闹过什么乐子吗?首先登场的是Navicat,这款强大的数据库管理工具,曾经让一位程序员朋友“火”了一把。Na...
- 详解PG数据库管理工具--pgadmin工具、安装部署及相关功能
-
概述今天主要介绍一下PG数据库管理工具--pgadmin,一起来看看吧~一、介绍pgAdmin4是一款为PostgreSQL设计的可靠和全面的数据库设计和管理软件,它允许连接到特定的数据库,创建表和...
- Enpass for Mac(跨平台密码管理软件)
-
还在寻找密码管理软件吗?密码管理软件有很多,但是综合素质相当优秀且完全免费的密码管理软件却并不常见,EnpassMac版是一款免费跨平台密码管理软件,可以通过这款软件高效安全的保护密码文件,而且可以...
- 一周热门
-
-
Python实现人事自动打卡,再也不会被批评
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
飞牛OS入门安装遇到问题,如何解决?
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)
- mysql刷新权限 (34)