/*
--Setando o banco a ser utilizado
USE master;
*/
/*
Certifique-se de que não existem transações antigas, de execução demorada ou não replicadas.
Para o fazer, utilize um código semelhante a:
DBCC OPENTRAN (nome_da_base_de_dados)
Para monitorizar a quantidade de espaço utilizada.
DBCC SQLPERF (LOGSPACE)
Fonte: http://support.microsoft.com/kb/256650/pt
*/
/* Dicas de MS-SQL Server
-- Erro ao criar usuario / login
-- Error 15023 MS-SQL Server - Usuário ou regra já existente
-- rodar pelo query analyzer
sp_change_users_login 'auto_fix', 'usuario'
*/
/*
-- Limpeza de banco - Limpa o Log MS-SQL Server
dump tran dbname with truncate_only
*/
/*
-- Diminir banco defrag
-- limpar primeiro o LOG
DBCC SHRINKdatabase ("banco")
*/
/*
-- Scripts para gerar script de limpeza e diminuição do banco
set nocount on
use master
-- gera resultado para ver os tamanhos dos bancos
select 'exec sp_helpdb ' + rtrim(name) + '' from sysdatabases order by name
-- gera script para limpar os logs dos bancos
select 'dump tran "' + name + '" with truncate_only' from sysdatabases
-- gera script para diminuir o tamanho dos bancos
select 'DBCC SHRINKdatabase ("' + rtrim(name) + '")' from sysdatabases
-- gera script para diminuir o tamanho dos bancos com o nome doo banco entre '(banco)'
select 'DBCC SHRINKDATABASE (' + rtrim(name) + ');' from sysdatabases order by name
-- gera script para limpar somente o arquivo log de cada bancos
select 'USE ' + NAME + '; DBCC SHRINKFILE (' + rtrim(name) + '_LOG,1);'
from sysdatabases
where dbid > 6 or name = 'tempdb' order by name
*/
/*
-- verificar se o banco está em off line
select * from sysdatabases order by name
select * from sysdatabases where cmptlevel= 80 order by name
select * from sysdatabases where cmptlevel= 90 order by name
-- banco sql 2000 off line: status = 528 e cmptlevel=80
-- banco sql 2005 off line: status = 66048 e cmptlevel=80
*/
/*
-- Permitir trace no MS-SQL Server para fazer Debug pelo Profiller
grant ALTER TRACE to [LOGIN]
*/
/*
-- Cria linked Server no MS-SQL Server
GRANT ALTER ANY LINKED SERVER to [LOGIN]
-- Remove linked Server no MS-SQL Server
revoke ALTER ANY LINKED SERVER to [LOGIN]
*/
/*
-- Estes script permite localizar as maiores tabelas (tamanho) de uma base MS-SQL Server
WITH RES AS(
SELECT
T.NAME As Tabela,
Rows As Linhas,
SUM(Total_Pages) * 8 As Reservado,
SUM(Used_Pages) * 8 As Utilizado
FROM
sys.partitions As P
INNER JOIN sys.allocation_units As A ON P.hobt_id = A.container_id
INNER JOIN sys.tables T ON T.Object_ID = P.Object_ID
GROUP BY T.NAME, Rows
)
SELECT Tabela,
Linhas,
Reservados = CASE WHEN Reservado < 1024 THEN CAST(Reservado AS VARCHAR) + ' KB' ELSE CAST(CAST(Reservado /1024.0 AS DECIMAL(20,2)) AS VARCHAR) + ' MB' END,
Utilizados = CASE WHEN Utilizado < 1024 THEN CAST(Utilizado AS VARCHAR) + ' KB' ELSE CAST(CAST(Utilizado /1024.0 AS DECIMAL(20,2)) AS VARCHAR) + ' MB' END
FROM RES
ORDER BY RES.Utilizado DESC
*/
-- Estes script permite localizar as maiores tabelas (tamanho) de uma base MS-SQL Server
-- com menos informações
Select object_name(id),rowcnt,dpages*8 as [tamanho KB] from sysindexes
where indid in (1,0) and objectproperty(id,'isusertable')=1
order by rowcnt desc
*/
/*
-- Apaga dados tabela imediatamente.
-- Cuidado apaga de uma vez SEM confirmação
Truncate table TABLELA
*/
/*
-- Para retirar uma base do ar, conecte-se no banco MASTER e digite os seguintes comandos:
-- Code Snippet
-- Para colocar uma base específica em OFF LINE
ALTER DATABASE SeuBanco SET OFFLINE WITH ROLLBACK IMMEDIATE
-- Para colcoar uma base específica em ON LINE
ALTER DATABASE SeuBanco SET ONLINE
-- SCRIPT Para gera uma base específica
select 'ALTER DATABASE ' + rtrim(name) + ' SET OFFLINE WITH ROLLBACK IMMEDIATE' from sysdatabases
*/
/*
-- restore de diferencial
-- voltar backup com a opcao norecover e votar com o comando abaixo o diferencial.
RESTORE DATABASE [base] FROM DISK = N'C:\temp\base.bak' WITH FILE = 1
*/
/*
-- verifica collation MS-SQL SERVER
http://www.sqlnewsgroups.net/group/microsoft.public.sqlserver.server/topic21538.aspx
This is a collation - not really something you can install as such. If you
mean you want the Server Collation to be set to
"SQL_Latin1_General_CP1_CI_AS" then the option is there on the screen called
"Collation Settings" when you do the SQL Server install. Select the option
for SQL collations and "Dictionary order, case-insensitive, for use with
1252 Character set.". Cheers, Paul Ibison SQL Server MVP, www.replicationanswers.com.
-- http://www.serverintellect.com/support/sqlserver/change-database-collation.aspx
*/
/*
EXEC sp_helpsort
SELECT SERVERPROPERTY ('Collation')
EXEC sp_helpsort
SELECT SERVERPROPERTY ('Collation')
-- altera o collation de uma base
ALTER DATABASE base COLLATE SQL_Latin1_General_CP1_CI_AS --collation
*/
/*
-- SCRIPT DE RESTORE E BACKUP MS-SQL SERVER
RESTORE DATABASE AdventureWorks
FROM AdventureWorksBackups
WITH NORECOVERY,
MOVE 'AdventureWorks_Data' TO
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',
MOVE 'AdventureWorks_Log'
TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf'
RESTORE LOG AdventureWorks
FROM AdventureWorksBackups
WITH RECOVERY
--Restaurando o Backup Completo do Media Set 1
RESTORE DATABASE AdventureWorks FROM
DISK = 'C:\Backup\P1.bak', DISK = 'C:\Backup\P2.bak', DISK = 'C:\Backup\P3.bak'
WITH MEDIANAME = 'Nome_Conjunto_Mídia', FILE=1, NORECOVERY;
--Restaurando o Backup Completo do Media Set 2
RESTORE DATABASE AdventureWorks FROM
DISK = 'C:\Backup\P1.bak', DISK = 'C:\Backup\P2.bak', DISK = 'C:\Backup\P3.bak'
WITH MEDIANAME = 'Nome_Conjunto_Mídia', FILE=2, RECOVERY;
--
RESTORE DATABASE [Banco]
FROM [BancoCompleto1]
WITH NORECOVERY,
MOVE 'AdventureWorks_Data' TO
'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.mdf',
MOVE 'AdventureWorks_Log'
TO 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\NewAdvWorks.ldf'
RESTORE LOG AdventureWorks
FROM AdventureWorksBackups
WITH RECOVERY
RESTORE LABELONLY FROM [BancoCompleto1] WITH ?????
RESTORE LABELONLY FROM DISK='C:\Backup\P1.bak'
RESTORE LABELONLY FROM DISK='C:\Backup\BancoCompleto1.bak'
--
RESTORE DATABASE AdventureWorks FROM
DISK = 'C:\Backup\BancoCompleto1.bak', DISK = 'C:\Backup\P2.bak', DISK = 'C:\Backup\P3.bak'
WITH MEDIANAME = 'Nome_Conjunto_Mídia', FILE=2, RECOVERY;
---RESTORE DATABASE [Banco] FROM DISK = N 'C:\Backup\BancoCompleto1.bak' WITH FILE = 1, NOUNLOAD, STATS = 10
GO
RESTORE DATABASE [Banco] FROM DISK = N 'C:\Backup\BancoCompleto1.bak'
WITH FILE = 1, NOUNLOAD, STATS = 10
GO
RESTORE LABELONLY FROM DISK= 'C:\Backup\BancoCompleto1.bak'
RESTORE DATABASE [Banco]
FROM DISK = N 'C:\Backup\BancoCompleto.bak'
WITH NORECOVERY,
MOVE 'Banco_Data' TO
'Y:\Banco.mdf',
MOVE 'Banco_Log'
TO 'Y:\Banco.ldf'
*/
Nenhum comentário:
Postar um comentário