随笔分类 - SQL SERVER 管理
摘要:1. 在SQL SERVER端安装MYSQL的ODBC驱动2. 在ODBC数据源添加MYSQL(控制面板\所有控制面板项\管理工具)在用户DSN 和系统DSN添加配置驱动程序注:字符集一定要和Mysql服务器相对应,如果Mysql使用了gbk字符集,则一定要设置字符集为gbk,否则导入到Sql 可能...
阅读全文
摘要:use SalesDB1go-- 查看表是否已经分区SELECT *FROM sys .tables AS tJOIN sys .indexes AS i ON t .[object_id] = i .[object_id] AND i .[type] IN ( 0,1 )JOIN s...
阅读全文
摘要:MS SQL Server Profiler概述: MS SQL Server Profiler是SQL Trace的GUI接口,提供对SQL Server Database Engine或者Analysis Service实例的事件监控功能。MS SQL Server Profiler使用: 我们可以根据需求,来进行GUI的功能性调试,比如要监控一个数据库有那个T-SQL的操作。工具 - profiler - 勾选要跟踪的事件。如果是长时间的半夜操作呢,我们是否每天都要去开启这个gui的界面呢?这个时候我们可以使用SQL Trace 的功能,也就是脚本来进行操作。示例:我们通过GUI来跟踪.
阅读全文
摘要:由于某些原因,需要将2个数据库实例合并为1个,也就是说要把其中的一台迁移到另外一台上面。背景介绍 :下面的B,C代表2个实例,要把B中相关东西迁移到C实例上面。其中B上面有一部分的同步是从另外一台服务器同步过来,这里说是A吧,迁移版本相同(我操作的版本为SQL SERVER 2008R2)简单步骤如下:1. 复制A实例上面的 Login和 Job 到B上面 Login的迁移可以参考:http://support.microsoft.com/kb/918992 Job的迁移可以使用资源管理器进行批量的生成,可以参见: http://www.cnblogs.com/dudu/archive/201
阅读全文
摘要:发生症状: 先是服务器挂掉,之后服务器可以登陆,但是实例却不能登陆进去(部分)。出现的错误日志如下:2014-01-24 09:37:00.14 Server Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64) Jun 28 2012 08:36:30 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.1 (Build 7600: )2014-01-24 09:37:00.15 Server ...
阅读全文
摘要:select owner_sid ,lo.sid, lo.name, lo.loginname ,db_name(database_id) from master.sys.databases da inner join sys.syslogins lo on da.owner_sid = lo.sid今天发现有的数据库所有都不是Sa,一个一个看着好累哎~~~ 此脚本可供查询。
阅读全文
摘要:主体和安全实体在 SQL Server 2008中,“主体”就是可以访问受保护资源且能获得访问资源所需权限的任何个人、组或流程。与旧版 SQL Server 一样,可以在 Windows 中定义主体,也可将没有对应 Windows 主体的 SQL Server 登录作为其基础。下面的列表显示了 SQL Server 2008主体的层次结构,但不包括固定服务器和数据库角色,还显示了将登录和数据库用户映射为安全对象的方法。主体的影响范围取决于它的定义范围,这样 Windows 级别的主体就比 SQL Server 级别的主体拥有更大的影响范围,而后者的影响范围又大于数据库级别的主体。每个数据库用户
阅读全文
摘要:昨天在测试一些权限今天早上来就发现SQL SERVER 登陆不上去,报错为: 用户登陆失败:消息18456,级别14,状态1,服务器 XXX,第1行 . 用户'XXX'登录失败。我的服务和代理都是自动启动的,所以问题不在这了,由于是本地服务,也没有多个帐户,测试的时候Sa也被自己禁用了。有的用户就是部分库的只读权限,怎么办呢? 方法就是:把 sql 启动到单用户模式,然后用 sqlcmd -A 登录,前提是你需要有电脑的管理员权限。网上有很多方法是一样的,但是对于单用户模式的说明都不太详细,至少对于像我这种小白来讲还是有一定的理解问题,所以写一下以便于像我一样误操作导致的同学进
阅读全文
摘要:赶在月末写个博客。-- 根据SP来检查用的那个作业SELECT *FROM msdb.dbo.sysjobs JOB WITH( NOLOCK)INNER JOIN msdb. dbo.sysjobsteps STP WITH(NOLOCK )ON STP .job_id = JOB .job_idWHERE STP .command LIKE N'% sp_name %'-- 禁用JOBEXEC msdb..sp_update_job @job_name = 'Job_name', @enabled =0 -- 0为禁用,1为启用 -- 删除JOB ,具体参数
阅读全文
摘要:移动系统数据库在下列情况下可能很有用:故障恢复。例如,数据库处于可疑模式下或因硬件故障而关闭。计划的重定位。为预定的磁盘维护操作而进行的重定位。移动 Master 数据库 在“开始”菜单中,依次指向“所有程序”、Microsoft SQL Server和“配置工具”,再单击SQL Server 配置管理器。在“SQL Server 服务”节点中,右键单击 SQL Server 实例(如SQL Server (MSSQLSERVE...
阅读全文
摘要:在复制中,有的时候会出现订阅端被人修改,导致发布端插入数据的时候主键冲突,这个时候我们要做的不是直接的初始化太过暴力,而对于生产环境来说,这样的操作代价也会很大。下面会说几种方法来处理冲突:1、 查看出错的复制命令的具体内容如果在复制监视器的订阅详细信息中查看分发代理出错信息时,如果发错发生在应用复制命令时,则可以看到类似信息:尝试的命令: If @@TRANCOUNT > 0 rollback tran (事务序列号:.......) 错误消息: 违反了primary key 约束'%s'。不能在对象'%S'中插入重复键.如下例子:尝试的命令:if @@
阅读全文
摘要:bcp 实用工具可以在 Microsoft SQL Server 实例和用户指定格式的数据文件间大容量复制数据。 使用 bcp 实用工具可以将大量新行导入 SQL Server 表,或将表数据导出到数据文件。 除非与 queryout 选项一起使用,否则使用该实用工具不需要了解 Transact-SQL 知识。 若要将数据导入表中,必须使用为该表创建的格式文件,或者必须了解表的结构以及对于该表中的列有效的数据类型。BCP的所有参数:BCP可以执行的4种操作(1) 导入 这个动作使用in命令完成,后面跟需要导入的文件名。 (2) 导出 这个动作使用out命令完成,后面跟需要导出的文件名。 (..
阅读全文
摘要:复制中常用到的表:use distributiongoSELECT * FROM dbo.MSrepl_transactions WITH(NOLOCK) --表中每个重复事务占一行select * from dbo.MSrepl_commands with(nolock) --表包含复制命令行--比如一个更新语句,影响行数为行,transactions表里会有一行,commands表里多行select * from dbo.MSrepl_errors with( nolock) -- 表包含具有扩展分发代理和合并代理失败信息的行 select * fro...
阅读全文
摘要:Transact-SQL 参考sp_replication_agent_checkup检查每个分发数据库的复制代理程序,这些复制代理程序正在运行但在指定的心跳信号间隔内没有历史记录。此存储过程在分发服务器的任何数据库上执行。语法sp_replication_agent_checkup [ [ @heartbeat_interval = ] heartbeat_interval ]参数[@heartbeat_interval =] 'heartbeat_interval'是代理程序在不记录进度消息的情况下可以运行的最长分钟数。heartbeat_interval 的数据类型为 i
阅读全文
摘要:复制代理说明: 复制代理执行许多与复制有关的任务,其中包括创建架构和数据副本、检测发布服务器或订阅服务器上的更新以及在服务器之间传播更改。 默认情况下,复制代理在 MicrosoftSQL Server 代理作业步骤下运行。 由于这些代理完全是可执行文件,因此可以从命令行和批处理脚本直接调用它们。 每个复制代理支持一组运行时参数,用于控制代理的运行方式;这些参数在代理配置文件或命令行中指定。可以通过下图来看复制代理相关的JOB与计划:清除作业说明默认调度代理历史记录清除:分发从分发数据库中删除复制代理历史记录。每十分钟运行一次分发清除:分发从分发数据库中删除复制的事务。 停用在最大分发保持期.
阅读全文
摘要:创建发布的时候出现这个图:警告内容如下:无法为可更新的订阅设置发布服务器登录名。可能需要使用 sp_link_publication. 直接在订阅服务器计算机上设置它。其他信息:执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)服务器 'HOUYAJUN' 上的 MSDTC 不可用。已将数据库上下文更改为 'TEST'。 (Microsoft SQL Server,错误: 8501)有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdNam
阅读全文
摘要:数据库环境:SQL SERVER 2005 +1、Replication,我们常用的是Transactional Replication。可以支持单向和双向的数据同步。工作在Table Level。由于基于transaction,(内部使用了类似Snapshot链出改变页的方法),他的同步单位较小,在实践中,往往只需要几分钟的时间就可以得到最新的数据。缺点,虽然允许Replication Schema Change,但是对于真正的DDL修改的时候有时需要手动的进行修改。容易出现数据同步问题,而且复杂的查询可能导致Replication的性能并导致数据同步问题2、Log Shipping。基于B
阅读全文
摘要:只是简单的忘记密码,或者是一直禁用着,然后想重新启用:测试环境为 SQL SERVER 2008,不过05和r2也都可以用。1、可以使用sp_password Null,'123' ,'sa'--把sa的密码设为“123”2、也可以启用,然后再修改密码ALTER LOGIN sa ENABLE -- 启用saGOALTER LOGIN [sa]WITH PASSWORD = N'NewPassword' --不用提供旧密码注意:改的时候看一下属性--->安全性--->服务器身份验证,这个是不是'SQL SERVER 和 win
阅读全文
摘要:今天有同事问我:目录名无效,看权限应该有有的,sysadmin的权限,也尝试了sa显示同样的错误,但是他说网站的读写都是没有问题的。找不到错误了,在群里问了一下,有人扔了一个链接,发现还真是。解决方法:新建一个查询分析器 --输入要查询的语句 然后点工具栏中〔显示估计的查询计划 或者 ctrl + l 〕,结果提示Documents and Settings\XXX\Local Settings\Temp\1\xxx.tmp文件不能访问。查看发现没有1这个子目录--这是给1号远程连接会话用的临时目录,手工创建子目录1,即可正常查询 .参看:http://blog.sina.com.cn/s/b
阅读全文
摘要:转载:http://blog.sina.com.cn/s/blog_3eb222740100styi.html添加项: DBCC TRACEON(1222,-1) DBCC TRACEOFF(1222,-1) DBCC TRACESTATUS上述代码为启动跟踪死锁标记,关闭跟踪死锁以及显示当前会话启用的所有跟踪标志。----------------------------------------------------*分割线*----------------------------------------------跟踪标志用于临时设置特定服务器的特征或关闭特定行为。例如,...
阅读全文