Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SQL Server:事件未引用任何表(Tuning Advisor警告)_C#_Sql Server_Linq To Sql_Performance_Sql Server Profiler - Fatal编程技术网

C# SQL Server:事件未引用任何表(Tuning Advisor警告)

C# SQL Server:事件未引用任何表(Tuning Advisor警告),c#,sql-server,linq-to-sql,performance,sql-server-profiler,C#,Sql Server,Linq To Sql,Performance,Sql Server Profiler,我有一个用C编写的应用程序,它使用Linq2SQL与SQL Server进行通信。有些查询运行得有点慢,我想可能需要一些索引来加快速度 但我真的不知道该怎么做,也不知道该做什么,该去哪里,该做什么,不该做什么。所以我想我可以在这里问一下,但是后来我发现了一个叫做数据库引擎调优顾问的程序,我想我可以先试用一下。问题是我不能让它工作。也许是我不知道该怎么做,但我真的不知道该怎么做。据我所知,我已经根据帮助文件完成了我应该做的事情 打开SQL Server探查器。 使用调整模板启动新跟踪。 启动我的应

我有一个用C编写的应用程序,它使用Linq2SQL与SQL Server进行通信。有些查询运行得有点慢,我想可能需要一些索引来加快速度

但我真的不知道该怎么做,也不知道该做什么,该去哪里,该做什么,不该做什么。所以我想我可以在这里问一下,但是后来我发现了一个叫做数据库引擎调优顾问的程序,我想我可以先试用一下。问题是我不能让它工作。也许是我不知道该怎么做,但我真的不知道该怎么做。据我所知,我已经根据帮助文件完成了我应该做的事情

打开SQL Server探查器。 使用调整模板启动新跟踪。 启动我的应用程序并执行一些生成SQL查询的操作。 关闭我的申请。 停止追踪。 将跟踪另存为跟踪文件。 开放数据库引擎优化顾问 选择File as Workload并选择我先前保存的跟踪文件。 在“选择要优化的数据库和表”下选择我的应用程序使用的数据库。 单击开始分析。 到目前为止,我认为一切进展顺利。但当它在一段时间后结束时,我得到:


还有一个完整的empy推荐页面。事件不引用任何表?除了显而易见的p之外,这意味着什么?我是否误解了这里的流程?发生了什么事?

我认为您没有收到推荐的原因是您没有数据库的“SHOWPLAN”权限。授予正在运行分析器的用户访问权限,然后重试


此外,我还看到一些无效的对象名称错误-请确保您运行analyzer as的用户对所有相关的表都具有相应的权限。

如果您遇到此错误,还可以检查另一件事。如果您是像我这样的新手,您可能忘记了从“常规”选项卡上的“用于工作负载分析的数据库”下拉列表中选择适当的数据库。我以自己的dbo身份运行分析仪,但我的跟踪本身包含来自没有SHOWPATH访问权限的IIS应用程序池用户的查询

因此,我授予该IIS应用程序池用户SHOWPATH访问权限,然后它运行良好

GRANT SHOWPLAN TO [COMPANYDOMIAN\IIS_APPUSER]

“事件”列中的命令是否与您期望看到的相符?你能认出里面的东西来自你的应用程序吗?不是所有的,但很多。是的,我也发现了。我现在修好了。但我仍然得到“事件不引用任何表”后面跟着“替换事件”之类的内容。嗯。。。在我的应用程序中的一些其他较重的操作上尝试了它,现在看起来它正在工作,尽管我仍然收到了一堆这样的消息。。。困惑的哦,好吧。。。我会接受你的回答,因为你已经抓住了SHOWPLAN的东西。想想看,再加上较重的手术可能会造成不同=对我有效。谢谢我将分析为“sa”,但仍会出现此错误。这很奇怪。此字段不需要设置为包含要在其上创建索引的表的数据库。这是tuning advisor将在其下启动的db。然后,它将切换到工作负载文件中指定的正确数据库。