0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Devart:如何通过跨多个数据库自动执行数据库脚本来节省时间和减少错误

哲想软件 来源:哲想软件 2023-04-06 09:49 次阅读

随着企业的增长,它们的数据库也在增长。随着需要处理的数据量不断增加,管理多个数据库并在所有数据库中执行脚本可能会变得难以应付。这可能导致错误和低效率,浪费宝贵的时间和资源。

幸运的是,自动化可以为这些问题提供解决方案。通过跨多个目标自动执行数据库脚本,企业可以节省时间、减少错误并提高工作效率。本指南将探讨自动化数据库脚本执行的好处,并提供关于如何在组织中实现自动化的实用技巧。在本文结束时,您将清楚地了解自动化如何简化数据库管理并改进业务操作。

ab4045a2-d418-11ed-bfe3-dac502259ad0.png

内容

方法1:使用dbForgeStudio和命令行对多个数据库执行多个脚本

  • 准备好环境

  • 创建.bat文件

  • 执行.bat文件

方法2:从dbForgeStudio的接口执行针对多个数据库的脚本

结论

方法1:使用dbForgeStudio和命令行对多个数据库执行多个脚本

步骤1:准备环境

这一步涉及创建两个文本文件。第一个将包含执行脚本所需的连接和数据库列表,而第二个将存储需要针对这些数据库执行的SQL脚本列表。

创建一个databases.txt文件

1.1启动第三方文本编辑器,如记事本。

1.2输入源服务器名称、数据库名称、用户名和密码,以“,”分隔。该列表可以根据需要包含任意数量的服务器和数据库。下面是一个你可以使用的模板:

aba79b12-d418-11ed-bfe3-dac502259ad0.png

1.3使用合适的名称和文件扩展名保存文本文件,例如“Target_Databases.txt”。

abbcd784-d418-11ed-bfe3-dac502259ad0.png

创建一个scripts.txt文件

1.4打开第三方文本编辑器(如记事本)。

1.5输入您希望执行的SQL脚本的路径,以及它们各自的编码,用逗号分隔。您可以根据以下模板向列表中添加任意数量的脚本。

abda4580-d418-11ed-bfe3-dac502259ad0.png

1.6保存文本文件。

步骤2:创建一个.bat文件

接下来,我们需要用脚本创建一个.bat文件,该脚本将启动dbForgeStudio for SQLServer,针对Target_Databases.txt文件中指定的数据库执行SQL_files.txt文件中指定的脚本。

2.1打开文本编辑器,如“记事本”。

2.2输入针对多个数据库执行多个SQL脚本的脚本,并根据需要进行调整。下面的例子显示了脚本结构:

ac032428-d418-11ed-bfe3-dac502259ad0.png

脚本中:

Target_Databases.txt是列出目标服务器、数据库和要连接到它们的凭证的文件的名称。

SQL_files.txt是存储要执行的SQL脚本列表的文件名。

请注意

“SetRuntool”为dbForgeStudio for SQL Server的默认安装路径。如果您更改了它,您将需要指定工具的.com文件的正确路径。

2.3保存为“。bat”文件。

步骤3:执行.bat文件

现在,您所需要做的就是运行.bat文件。

ac1e0e0a-d418-11ed-bfe3-dac502259ad0.png

正如您所看到的,已经针对我们指定的数据库成功执行了脚本。令人惊讶的是,如此大规模的惊人结果只需要如此少的准备。

方法2:从dbForgeStudio的接口跨多个目标执行脚本

dbForgeStudio for SQL Server允许您快速有效地跨多个数据库执行脚本。为此,只需右键单击SQL文档中的任意位置并选择RunOn Multiple Targets。

ac9221aa-d418-11ed-bfe3-dac502259ad0.png

将打开RunOn Multiple Targets向导。

acbfb4f8-d418-11ed-bfe3-dac502259ad0.png

让我们针对选定的数据库执行脚本。

acdab032-d418-11ed-bfe3-dac502259ad0.png

脚本已经成功执行,并且已经在目标数据库中创建了Users表。如果使用dbForgeStudio for SQL Server对多个数据库运行脚本,该工具将为每个数据库打开单独的SQL文档。这允许您确认查询完成状态。

在这里,您可以指定数据库服务器连接并提供脚本文件的路径,或者直接从SSMSSQL文档执行脚本。您还可以选择要对其执行脚本的数据库,为方便起见隐藏系统数据库,并选择以串联或并行方式执行脚本。

但是,重要的是要注意,只有当数据库位于同一数据库服务器上时,才能在一个执行操作中对多个数据库执行脚本。如果数据库位于不同的服务器上,则需要通过在向导中切换连接来分几个步骤执行脚本。

结论

在本文中,我们演示了两种针对多个数据库执行SQL脚本的方法。第一种方法涉及在.bat文件中创建一个自定义脚本,该脚本允许针对多个数据库运行多个脚本。这种方法在指定要执行的脚本和数据库方面提供了灵活性,使其成为复杂场景的理想解决方案。第二种方法涉及使用dbForgeStudio接口,该接口允许对驻留在一台服务器上的多个数据库执行一个脚本。当处理位于同一服务器和单个脚本上的数据库时,此方法非常有用。

两种方法都有各自的优点和缺点,选择合适的方法取决于手头任务的具体要求。现在,您已经完全具备了针对多个数据库高效执行SQL脚本的能力,这可以潜在地为您节省大量管理和维护SQLServer数据库的时间和精力。


审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    8410

    浏览量

    83825
  • 数据库
    +关注

    关注

    7

    文章

    3660

    浏览量

    63790
  • 脚本
    +关注

    关注

    1

    文章

    378

    浏览量

    14718

原文标题:Devart:如何通过跨多个数据库自动执行数据库脚本来节省时间和减少错误

文章出处:【微信号:哲想软件,微信公众号:哲想软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    labview 数据库操作问题

    不能很好的支持远程,是不是啊?那用DatabaseConnectivityToolkit怎么写命令给数据库数据库执行数据库里应经编写好的命令啊 ?
    发表于 07-23 17:06

    Access数据库

    最近学习数据库,自己给自己设了个题目,用状态机JKI实现如下功能:1.可添加数据至某表、显示部分(通过”完成“的值)及所有数据、删除数据
    发表于 04-26 16:28

    labview多程序同时访问数据库闪退问题

    用labview访问数据库,连接,增删改查都没问题。但当我再两个循环中都对数据库进行操作时,程序要么卡着不动了,要么闪退。经排查是当两个循环中同时执行数据库操作功能时,会发生冲突,导致程序出现问题
    发表于 01-19 15:50

    labview多程序同时访问数据库程序卡死问题

    用labview访问数据库,连接,增删改查都没问题。但当我再两个循环中都对数据库进行操作时,程序要么卡着不动了,要么闪退。经排查是当两个循环中同时执行数据库操作功能时,会发生冲突,导致程序出现问题
    发表于 01-19 15:51

    USART使用DMA时可以节省时间吗?

    USART使用DMA时可以节省时间吗?
    发表于 12-02 07:21

    基于MPI的并行数据库的研究与实现

    随着硬件发展趋于极限,建立并行数据库管理系统已成为提高数据库性能的必然选择。本文在介绍了并行数据库系统相关的概念之后, 讨论了并行数据库的物理组织结构,并介绍了一
    发表于 06-22 09:18 15次下载

    利用ADO实现对多个数据库的访问

    本文分析了在做实际项目中所遇到的问题,提出了可行的解决方法。主要介绍了利用ADO Connection和ADO Recordset 对象访问多个数据库多个表单的灵活访问方法。并且探讨了ADO Connection
    发表于 09-10 16:12 15次下载

    数据库教程之如何进行数据库设计

    本文档的主要内容详细介绍的是数据库教程之如何进行数据库设计内容包括了:1 数据库设计概述 ,2 数据库需求分析 ,3 数据库结构设计 ,4
    发表于 10-19 10:41 21次下载
    <b class='flag-5'>数据库</b>教程之如何进<b class='flag-5'>行数据库</b>设计

    通过节省时间和成本的创新威廉希尔官方网站 降低电源中的EMI

    通过节省时间和成本的创新威廉希尔官方网站 降低电源中的EMI。
    发表于 06-09 09:53 20次下载

    数据库数据恢复】MS SQL数据库提示“附加数据库错误 823”如何恢复数据

    备份,只需要还原备份即可。如果没有备份或者备份的时间间隔太久,或者备份数据不可用,这个时候就需要对数据库行数据恢复的操作。
    的头像 发表于 12-08 12:07 2711次阅读
    【<b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复】MS SQL<b class='flag-5'>数据库</b>提示“附加<b class='flag-5'>数据库</b><b class='flag-5'>错误</b> 823”如何恢复<b class='flag-5'>数据</b>?

    数据库数据恢复】华为云ECS网站服务器mysql数据库数据恢复案例

    执行数据库版本更新测试时,用户误将本应在测试测试的sql脚本执行在生产中,导致部分表被truncate,部分表内少量
    的头像 发表于 01-17 15:40 897次阅读
    【<b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复】华为云ECS网站服务器mysql<b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复案例

    多平台的关系数据库管理和开发工具

    管理、管理更改、调整查询和开发关系数据库 数据库专业人员需要尽量减少花在日常管理和在整个组织中开发数据库。为了应对这一挑战,受益于IDERA的用于管理和开发
    的头像 发表于 06-27 10:54 600次阅读
    多平台的关系<b class='flag-5'>数据库</b>管理和开发工具

    python读取数据库数据 python查询数据库 python数据库连接

    python读取数据库数据 python查询数据库 python数据库连接 Python是一门高级编程语言,广泛应用于各种领域。其中,Python在
    的头像 发表于 08-28 17:09 1476次阅读

    数据库数据恢复—SQLserver数据库被加密如何恢复数据

    一台服务器上的SQLserver数据库被勒索病毒加密,无法正常使用。该服务器上部署有多个SQLserver数据库,其中有2个数据库及备份文件被加密,文件名被篡改,
    的头像 发表于 11-23 14:42 693次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b>恢复—SQLserver<b class='flag-5'>数据库</b>被加密如何恢复<b class='flag-5'>数据</b>?

    mysql怎么新建一个数据库

    mysql怎么新建一个数据库 如何新建一个数据库在MySQL中 创建一个数据库是MySQL中的基本操作之一。下面将详细介绍在MySQL中如何新建一个数据库。 在MySQL中创建
    的头像 发表于 12-28 10:01 643次阅读