SQL Server DBA面试必备:实用技巧与疑难解答
SQL_Server数据库管理员面试题(DBA)主要聚焦于SQL Server数据库管理的核心技能和知识。面试者可能被提问关于SQL Server性能监控、事务跟踪、网络连接管理以及数据库操作等方面的问题。以下是部分关键知识点的详细解析: 1. **SQL Server Profiler**:面试者可能会被问及如何使用SQL Server Profiler来分析和诊断SQL Server性能问题。这包括理解和使用各种事件类型(如StmtCompleted)来追踪执行时间、资源消耗等,并能识别出潜在的性能瓶颈。 2. **Transact-SQL查询优化**:面试者应熟悉Transact-SQL语法,并能够解释如何优化查询以提高查询效率,例如避免全表扫描、使用索引、理解JOIN操作的最佳实践等。 3. **数据库分离与附加**:理解如何使用`sp_detach_db`和`sp_attach_db`存储过程进行数据库的分离(脱机备份)和重新附加(恢复)。这是数据库维护和故障恢复的重要步骤,面试者需掌握正确的参数和路径设置。 4. **数据库安全性与权限管理**:面试者需要了解如何在SQL Server中设置和管理用户账户、权限,以及对 UNC 路径的访问控制。确保对敏感数据的适当保护是DBA的重要职责。 5. **SQL Server实例管理**:面试者应对PDC(Primary Domain Controller)和BDC(Backup Domain Controller)有深入理解,知道如何配置和监控SQL Server实例运行在不同的域控制器上。同时,他们应该能够处理不同角色之间的通信和权限协调。 6. **错误处理与日志分析**:面试者应能解释如何通过SQL Server错误日志定位问题,尤其是在处理网络连接失败、ID冲突等问题时。 7. **SQL Server 2000特定问题**:对于SQL Server 2000,面试者可能会遇到如ID分配规则(避免重复ID)和优化查询性能的问题。他们需要展示对旧版本SQL Server特性的理解和应用。 8. **数据库复制与备份**:虽然未直接提及,但一个好的DBA应了解SQL Server的数据复制策略(如Log Shipping、Transaction Log Backup)以及定期备份的重要性。 一个合格的SQL Server数据库管理员面试者需要具备全面的知识和实践经验,不仅限于SQL Server的命令行工具,还包括性能调优、安全性、故障恢复策略等多个方面。面试过程中,面试官将评估候选人的技术熟练度、问题解决能力和团队协作精神。
问:自从升级到SQL Server 2000后,我在SQL事件查看器中遇到了一个问题:我无法捕获带有参数的Transact-SQL语句。我希望获得查询执行过程中参数的实际取值,而并非诸如@p1这样的参数形式。请问如何在不引用跟踪过程中其它行的情况下对参数取值加以置换。
答:您必须获取跟踪过程的其它部分(如存储过程StmtCompleted所返回的结果),并将这些部分收集在一起(语句放在最前面)以捕获完整的查询内容。之所以会出现这样的结果,其原因在于从SQL Server关系型引擎恢复数据的SQL事件查看器方法。这样的问题在SQL Server 7.0中同样存在。然而,由于当事件产生时,位于引擎内部的参数取值是未知的,因此,我们无法在这一时刻做出修改。
将一个SQL Server系统用作一台PDC
问:我的公司建立了一个灾难恢复站点,并且计划在一台新配备的计算机上安装SQL Server。Microsoft Windows NT管理员希望使用运行SQL Server的计算机作为主域控制器(PDC)。我听说,由于PDC需要完整维护与复制网络帐号数据库所引发的资源密集型任务并且需要执行网络登陆验证操作,因此,这种配置方案并非一种良好的方式。那么,请问运行SQL Server的计算机能够转而充当备份域控制器(BDC)呢?从技术上讲,将SQL Server配置为PDC或BDC是否可能呢?
答:当您在PDC或BDC上安装SQL Server时,它仍可保持良好的工作状态。如需确定某种配置方案能否适应于您的站点,应当考虑您所拥有的资源。如果您拥有足够的网络带宽、内存空间与空闲处理器,那么,使用运行SQL Server的计算机作为域控制器便是一种合理的方案。然而,在这种情况下,根据域的实际规模,相应的计算机可能需要承担大量工作负载。如果您认为SQL Server的任务将会非常繁重,那么,便请不要再让其运行任何其它服务。
管理技巧
问:我尝试将数据库备份到网络共享资源上的一个文件中,并将其恢复到另一台服务器上。我试图通过下列语句借助net use命令在目标服务器上创建共享资源:
NET USE * \\\\PS5\\C /USER:ONEDEV\\domain id
password /PERSISTENT:NO
然而,系统却始终返回消息“无法获得尚未分配的可用驱动器盘符”。此时,SQL Server企业管理器明明显示出许多可用驱动器。请问我应如何解决这一问题?
答:您只需直接使用统一命名约定(UNC)路径来备份您的数据库。SQL Server并非按照与用户相同的方式来看待映射驱动器盘符。您需要在您的共享资源\\\\PS5\\C上为SQL Server服务帐号授予完整的访问权限,创建一个新的共享资源,或使SQL Server服务帐号成为名为PS5的计算机上的管理员组成员。
将事务日志移动到不同的驱动器
问:如何将数据库事务日志移动到不同的驱动器上?
答:您可以通过用于分离与附加数据库的SQL Server存储过程来移动事务日志。您需要对数据库进行分离,移动日志文件,然后再将其重新附加到数据库上。举例来说,如果要将pubs数据库从C驱动器移动到D驱动器,应首先使用以下格式的sp_detach_db命令分离数据库:
下载后可阅读完整内容,剩余3页未读,立即下载
- 粉丝: 3
- 资源: 9
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦