摘要:
1. 在SQL SERVER端安装MYSQL的ODBC驱动2. 在ODBC数据源添加MYSQL(控制面板\所有控制面板项\管理工具)在用户DSN 和系统DSN添加配置驱动程序注:字符集一定要和Mysql服务器相对应,如果Mysql使用了gbk字符集,则一定要设置字符集为gbk,否则导入到Sql 可能... 阅读全文
摘要:
@echo off::关闭回显set date=%~1:: 设置一个变量传参数if not exist %date% ( md %date%) else (rd /s /Q %date% && md %date%)cd %date%:: 如果文件夹不存在则创建,如果存在则删除掉并重建::rd是删除目... 阅读全文
摘要:
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... 阅读全文
摘要:
-- =============================================-- Author: -- Create date: -- Description: -- Environment: -- ========... 阅读全文
摘要:
declare @f int =5select floor(@f*0.22)-- 直接可显示结果create table demo(id int identity(1,1),id1 int)select * from demoinsert into demo(id1)select 2 union a... 阅读全文
摘要:
-- =============================================-- Author: -- Create date: -- Description: -- Environment: -- ===========================... 阅读全文
摘要:
DOS方式以运行中输入cmd 然后输入下面命令: 停止MSDTC: net stop msdtc开启MSDTC: net start msdtc卸载MSDTC: msdtc -uninstall重装MSDTC: msdtc -installsql server 中的方式:--启动本机的MSDTC服... 阅读全文
摘要:
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,一个一个看着好累哎~~~ 此脚本可供查询。 阅读全文
摘要:
执行原因:涉及2张表,其中一张表是excel ,被更新的表在数据库中,要更新的数据有80万,被更新的数据是近2千万的表,涉及同步到6个地方。按理来说批量更新也是可行的,但是由于时间限制,加上功能上的限制还是决定用别的方法(即复制存储过程)。之前的方法是:把excel的数据解析出来,然后每5000更新一次,间隔10s ,每个sheet为5万。中间会有阻塞的情况可以随时停掉重新执行。 麻烦的地方在于执行的时候需要监控分发数据库,避免堆积太多命令导致阻塞现在的方法是:把语句拆为分批的执行的,把excel的数据导入到一张表中,并将此表进行同步,然后把存储过程也进行同步,在发布属性 中 选择... 阅读全文
摘要:
主体和安全实体在 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... 阅读全文
摘要:
统计信息的含义与作用 对于同一句话,SQL SERVER 有很多种方法来完成它。有些方法适合于数据量比较小的时候,有些方法适合于数据量比较大的时候。同一种方法,在数据量不同的时候,复杂度会有非常大的差别。索引只能帮助SQL SERVER找到符合条件的记录。SQL SERVRE 还需要知道每一种操作所要处理的数据量有多少,从而估算出复杂度,选取一个代价最小的执行计划。说得通俗一点,SQL SERVR要能够知道数据是“长得什么样”的,才能用最快的方... 阅读全文
摘要:
如果一张表上没有聚集索引,数据将会随机的顺序存放在表里。以dbo.SalesOrderDetail_TEST为例子。它的上面没有聚集索引,只有一个在SalesOrderID上的非聚集索引。所以表格的每一行记录,不会按照任何顺序,而是随意地存放在Hash里。这个时候如果用户想要找所有单价大于200的销售详细记录,要运行的语句会是:SET STATISTICS PROFILE ON SELECT SalesOrderDetailID , UnitpriceFROM SalesOrderDetail_testWHERE UnitPrice > 200由于表在UnitPrice上没有索引,所以S 阅读全文
摘要:
当确定了应用性能问题可以归结到某一个,或者几个耗时资源的语句后,对这些语句进行调优,就是数据库管理员或者数据库应用程序开发者当仁不让的职责了。语句调优是和数据库打交道的必备基本功之一。当你面对一个“有问题”的语句时,应该怎么分析它的问题所在,最后达到优化语句的目的呢?首先要想一想,“有问题”的语句“问题”究竟在那里?也就是说,你要优化的目标是什么。常见的需求有:1) 语句需要访问大量的数据页面,造成内在压力、磁盘繁忙等。对于这类问题,所关心的是为什么语句要执行要访问这么多数据页面?是语句的结果集本身就比较大;还是SQL SERVER没有办法有效地seek,而是像大炮打苍蝇一样从大量的原始数据里 阅读全文
摘要:
方法1. 使用系统表-- 查询一个表中的索引及索引列USE AdventureWorks2008GOSELECT indexname = a.name , tablename = c. name , indexcolumns = d .name , a .indidFROM sysindexes a JOIN sysindexkeys b ON a .id = b .id AND a .indid = b.indid JOIN sysobjects c ON b .id = c .id JOIN syscolumns d ON b .id = d .id ... 阅读全文