小编swa*_*eck的帖子

Sql Server 全文搜索一个表中另一表中的文本值

是否可以在 FTS 索引列上运行全文搜索以查找另一个表中的所有值?

从概念上讲,它看起来像

select d.* from Docs d, Tags t where CONTAINS(d.fulltext, t.tagvalue)

我对 MSSQL FTS 相当陌生,尽管我知道等效的东西可以在 postgres 中工作

select d.* from docs d, tags t where to_tsquery(t.tagvalue) @@ to_tsvector(d.fulltext)

谢谢您的帮助!

sql-server full-text-search

5
推荐指数
1
解决办法
854
查看次数

从与主数据库实例不同的服务器运行 SSIS

我们目前有一个 SQL Server 集成服务 (SSIS) 包,它执行提取-传输-加载 (ETL) 过程以将一些数据从 SQL Server 移动到 DB2。在当前的生产服务器上,SSIS 与数据库实例安装在同一台服务器上,包的执行由 SQL 代理通过作业管理。

我们正在升级我们的 SQL 基础设施以进行集群,并且高级数据库管理员希望在其自己的服务器上拥有 SSIS,因此只需将集成服务服务安装到机器上即可设置 ETL 服务器。

SSIS 服务器是否还需要它自己的数据库实例和/或 SQL 代理来管理包的执行?

我在理解所有部分在这种情况下如何工作时遇到了一些麻烦。

我们使用的是 SQL Server 2008 R2 SP1。

sql-server ssis sql-server-2008-r2

5
推荐指数
1
解决办法
3万
查看次数

Sql Server 索引数据文件驱动器位置

作为我从一个 SAN 迁移到另一个 SAN 的持续传奇的一部分,新的 SAN 供应商说我需要将索引数据文件与我的主数据文件放在同一个驱动器中。否则,考虑到 SAN 附带的工具,我需要为此数据库创建一个新的 LUN 并将其创建为自己的卷。

无论如何,这是一种可以接受的做法吗……将索引文件组 (.ndf) 与数据文件放在同一个驱动器上?

谢谢

sql-server filegroups

4
推荐指数
1
解决办法
1118
查看次数

实际处理对链接服务器的查询在哪里?

如何处理对链接服务器的查询?链接服务器在收到来自远程源的查询时是否使用其优化器?有几个场景我想知道:

场景一

存储过程/视图完全依赖于链接服务器的结果集。链接服务器是否处理所有这些并随后通过网络将结果集流式传输回主服务器?

场景二

存储过程/视图使用本地和链接数据。我假设链接服务器返回一个结果集,然后本地服务器针对它自己的本地数据执行该结果集。我还假设本地优化器在这里没有发挥作用,因为它在提供数据集之前不知道链接服务器上的任何内容。

sql-server linked-server

4
推荐指数
1
解决办法
1841
查看次数

如何查看服务器上哪个数据库使用的资源最多

我有一个数据库服务器,上面有几个数据库。我如何才能看到任何资源压力可能来自哪里?

我想得到一张表:

  • 数据库名称
  • 每秒批处理请求数
  • CPU时间
  • 逻辑读取
  • 逻辑写入

performance sql-server-2008 sql-server

4
推荐指数
2
解决办法
411
查看次数

惊人的重新索引工作是一个好策略吗?

我继承了一台带有 35 个数据库的服务器和一个重新索引所有数据库上所有表的工作(使用sp_MSForEachTable)。它需要 14 多个小时才能完成,现在正在阻止其他进程。

我的问题是这样的:

在一周内错开重新索引是一个可以接受的策略吗?比如说,每晚 5 分贝?

谢谢。

sql-server-2008 sql-server index-tuning

3
推荐指数
1
解决办法
927
查看次数

我必须备份我的索引文件吗?

我有几个不同的实例(SQL 2000、2005),它们的索引放在一个单独的文件组中。我是否需要确保备份该组,还是会通过恢复数据库来重建它?

sql-server-2005 sql-server backup restore

3
推荐指数
1
解决办法
667
查看次数

2
推荐指数
1
解决办法
1万
查看次数

如何检查列中的空值?并使用其他列代替?

我将如何编写涉及以下检查的查询:

如果colA为空则colB = colB1 + colB2

如果colA不为空那么colB = colA

sql-server-2008

1
推荐指数
1
解决办法
1万
查看次数

安全删除 SQL Server 日志文件 (.LDF)

  • 我可以确保我的应用程序处于一致状态。
  • 如果有的话,我可以回滚所有未完成的交易(以防万一)没关系
  • 我可以分离数据库

之后我需要日志文件做什么?

我特别在谈论“高度控制”的环境。所以,真正的问题是:我怎样才能明确地强制一切正常以避免可能的数据丢失?这里有人有做这种手术的经验吗?

更新

这样做的原因是我不喜欢庞大的日志文件。高度受控的环境是我的 PC 在单用户模式下运行单个应用程序。我是此应用程序的开发人员,我可以完全控制代码更改。我宁愿删除而不是SHRINK这样,请不要建议我简单地删除SHRINK文件。

UDATE 2 -- 练习

我已经在生产中使用了这个过程半年多,没有任何问题。

sql-server delete backup transaction-log

-1
推荐指数
4
解决办法
4万
查看次数