Mostrando postagens com marcador MS-SQL. Mostrar todas as postagens
Mostrando postagens com marcador MS-SQL. Mostrar todas as postagens

terça-feira, 3 de abril de 2018

Listando a localização física dos arquivos dos bancos de dados

Listando a localização física dos arquivos dos bancos de dados





Muitas vezes necessitamos identificar a localização física dos arquivos que compõem os bancos de dados, e ficar clicando com o botão direito do mouse em cada banco não é muito prático (imagine uma instância com 20 bancos). Todo esse esforço pode ser minimizado através da execução de uma simples query:
SELECT d.name, m.physical_name FROM sys.master_files m
inner join sys.databases d
on d.database_id = m.database_id
Será mostrado o resultado abaixo:
File_databases
Adicionalmente, pode ser criado um filtro, para listar apenas a localização dos arquivos MDF ou LDF:
SELECT d.name, m.physical_name FROM sys.master_files m
inner join sys.databases d
on d.database_id = m.database_id
WHERE m.physical_name LIKE '%mdf'
Abraços e até a próxima.

Fonte:  Um Blog sobre SQL Server
https://angmaximo.wordpress.com/2013/08/14/listando-localizacao-fisica-databases/

terça-feira, 6 de junho de 2017

EMS Data Comparer para SQL Server

EMS Data Comparer para SQL Server

O EMS Data Comparer para SQL Server é uma poderosa ferramenta de fácil utilização que realiza a comparação e sincronização de dados do MS SQL Server. Usando este utilitário você poderá ver as diferenças na comparação de tabelas MS SQL Server e executar, automaticamente, scripts que eliminem estas diferenças. As operações de comparação e sincronização são extremamente customizáveis e permite que você selecione as tabelas e/ou campos que deverão ser considerados nesta operação.
O Data Comparer para SQL Server inclui um assistente que lhe guiará no processo de comparação e/ou sincronização de dados além de possuir um utilitário de linha de comando que permitirá sincronizar os dados em uma única operação
Principais características:
Barra_1
  • Interface com o usuário de fácil utilização
  • Comparação de dados para várias tabelas de cada vez
  • Seleção manual ou automática dos dados a serem comparados
  • Sincronização parcial de dados
  • Possibilidade de salvar os dados do script de sincronismo para utilização futura
  • Possibilidade de salvar todos os parâmetros da sessão para utilização futura
  • Utilitário de linha de comando permite sincronizar os dados utilizando um arquivo de configuração.
  • Suporta todos os tipos de dados do MS SQL Server
Benefícios ao adquirir o Data Comparer para SQL Server:
Barra_1
  • GRÁTIS: Primeiro ano de manutenção
  • GRÁTIS: recebimento de todas as novas versões durante o período de manutenção
  • GRÁTIS: suporte técnico diretamente da EMS durante o período de manutenção
  • Baixo custo de renovação do contrato de manutenção (20% do valor do produto/ano - opcional)

EMS DB Comparer para SQL Server

EMS DB Comparer para SQL Server

O EMS DB Comparer para SQL Server é uma excelente ferramenta para bancos de dados MS SQL Server que permite comparar e sincronizar bancos de dados. Ele permite que você veja as diferenças entre os objetos e execute um script, gerado automaticamente, que permitirá sincronizar as estruturas e eliminar as diferenças entre os bancos de dados selecionados. Ele possui um poderoso e útil console que permitirá automatizar a operação de comparação e/ou sincronismo. Com o DB Comparer para SQL Server você poderá trabalhar com vários projetos simultâneamente, definir os parâmetros de comparação, imprimir as diferenças e, se necessário, alterar o script de sincronização. Sua interface extremamente amigável lhe ajudará a descobrir e eliminar as diferenças nas estruturas dos seus bancos de dados MS SQL Server economizando seu tempo e dinheiro.

Principais características:
Barra_1
  • Comparação e sincronismo de bancos de dados e esquemas no mesmo servidor ou em servidores diferentes
  • Compara todos os objetos do banco de dados ou apenas o objetos selecionados.
  • Compara todas as propriedades do objeto ou apenas as propriedades selecionadas
  • Representação visual das diferenças entre os bancos de dados com detalhes dos scripts de modificação dos diferentes objetos
  • Possibilidade de sincronizar os bancos de dados manualmente, passo a passo, ou automaticamente
  • Geração de relatório com as diferenças dos bancos de dados com possibiliade de customização
  • Possibilidade de automatizar o processo de comparação e sincronismo usando uma aplicação Console
  • Trabalha com vários projetos ao mesmo tempo
  • Permite salvar todos os parâmetros do projeto para posterior reutilização
  • Uma grande variedade de opções de comparação e sincronismo
  • Editor de Scripts SQL incorporados com destaque de código (syntax highlight)
  • Suporta as versões mais recentes do MS SQL Server
Benefícios ao adquirir o DB Comparer para SQL Server:
Barra_1
  • GRÁTIS: Primeiro ano de manutenção
  • GRÁTIS: recebimento de todas as novas versões durante o período de manutenção
  • GRÁTIS: suporte técnico diretamente da EMS durante o período de manutenção
  • Baixo custo de renovação do contrato de manutenção (20% do valor do produto/ano - opcional)
Fonte: SQL Manager
http://www.sqlmanager.com.br/html/db_comparer_para_sql_server.html

Comparar Estrutura de banco de Dados / Compare Database Structure

Comparar Estrutura de banco de Dados / Compare Database Structure

DBComparer is a professional database comparison tool for analyzing the differences in Microsoft SQL Server 2008 (and 2005) database structures. It is an excellent tool for any project development team or DBA managing multiple copies of the same database on an SQL Server. This database comparison tool has a clean and straight-forward user interface. Results are clearly presented so that you can immediately see the differences in your databases. It will make locating and eliminating differences in your database fast and easy.
Compare database screenshot
 
In a Development or Test environment, you tend to have frequent changes to your databases and database schemas. But on live (Production) databases with real and potentially sensitive data, changes to the database schema are rare and can be complicated. In order to avoid unsuccessful deployments of your database related projects, you have to be sure that your databases are synchronized; DBComparer can offer you the peace of mind knowing that you caught all the differences between your environments and that changes are successfully migrated to Production. As soon as you download DBComparer you can start analyzing your databases. A quick run of the program will show you the differences you are looking for by comparing your databases. Please refer to the database compare walk thru section for more information.

 DBComparer Key Features

Automate compare database
Compare all database objects or selected ones only
Compare database by all or selected properties of objects only
A wide variety of options for comparison
Compare databases using all or selected object properties
Advanced visual build tree interface for an intuitive visual representation of any differences
Built-in text differences control with SQL syntax highlighting
Native database comparison support for Microsoft SQL Server 2008 (and 2005)

 Object types that are included in compare database process

• Tables
• Columns
• Indexes
• Foreign Keys
• Trigger
• Statistics
• Views
• Synonyms
• Stored Procedure
• User Defined Types
• User Defined Data Types
• XML Schema Collections
• Rules
• Defaults
• Function
• Aggregate
• Database Triggers
• Assemblies
• Partition Schemas
• Partition Functions
• Users
• Roles
• Schemas
• Asymmetric Keys
• Certificates
• Full Text Catalogs
• Symmetric Keys                                                 
When you are implementing a database solution, you need to be sure that you are running the same database schema in your development and live environments. If you were to start analyzing both databases manually in order to be sure that there are no differences, you would spend hours of your time with no guarantee when you were done, that you had found all of the differences. In this case, you need a database comparison tool. It will find the differences for you in your databases, allowing you to make changes as you see fit. It also offers you peace of mind knowing that your results will be 100% accurate. DBComparer offers an intuitive and easy to use interface that will locate differences on both databases in minutes.
Save yourself time and prevent problems resulting from manual comparisons - download and try DB Comparer today!

Fonte:  DBComparer
http://dbcomparer.com/

quinta-feira, 11 de junho de 2015

Instalar Session State no SQL Server 2008

Instalar Session State no SQL Server 2008

1.       Abrir Console como administrador
2.       Executar
a.       CD C:\Windows\Microsoft.NET\Framework\v4.0.30319
b.      aspnet_regsql.exe -S NOMEINSTANCIASQL -E -ssadd -sstype p
3.       Abrir o SQL Managemnt Studio
a.       Criar um usuário/senha
b.      Dar permissão de dbowner no banco ASPState

Abrir o web.config da aplicação e incluir em




quinta-feira, 28 de maio de 2015

Verificar há quantos dias as estatísticas estão desatualizadas + Script para atualização.

Verificar há quantos dias as estatísticas estão desatualizadas + Script para atualização.

--Exibe há quantos dias as estatísticas estão desatualizadas, bem como gera um script para atualização destas estatísticas

SELECT DISTINCT
       TB.object_id
       ,TB.NAME
       ,ST.NAME
       ,(DATEDIFF(d,STATS_DATE(IX.OBJECT_ID, index_id) ,getdate()) ) AS 'DiasDesatualizados'
       ,'UPDATE STATISTICS '+TB.NAME+' '+ST.NAME+' WITH FULLSCAN;'
  FROM sys.tables TB
 INNER JOIN sys.stats ST ON TB.object_id = ST.object_id
 INNER JOIN sys.indexes IX ON TB.object_id = IX.object_id
ORDER BY TB.name, st.name


Fonte: Site Edvaldo Castro
http://edvaldocastro.com/downloads/scripts/
https://drive.google.com/file/d/0BzIOoAnsymdJNHkxaHAweDdHazQ/view

Listar Backups realizados e o caminho onde foram gerados.


Listar Backups realizados e o caminho onde foram gerados.

--Query para listar os backups realizados com seus respectivos caminhos de armazenamento.
 SELECT database_name,type,position,first_lsn,last_lsn,backup_start_date,begins_log_chain,is_copy_only,BMF.physical_device_name
   FROM MSDB..backupset BS
  INNER JOIN MSDB..backupmediafamily BMF
     ON BS.media_set_id = BMF.media_set_id
  ORDER BY backup_start_date
GO

Fonte: Site Edvaldo Castro
http://edvaldocastro.com/downloads/scripts/
https://drive.google.com/file/d/0BzIOoAnsymdJSVpIRUw1anVyTGM/view

Verificar a existência de bloqueios na instância

Verificar a existência de bloqueios na instância.

SELECT db_name(database_id),rqt.session_id,status,blocking_session_id,wait_type,last_wait_type,wait_resource,wait_time,TEXT
      FROM sys.dm_exec_requests rqt
      INNER JOIN sys.dm_exec_connections cnt
            ON rqt.session_id = cnt.session_id
      CROSS APPLY sys.dm_exec_sql_text(cnt.most_recent_sql_handle)
            WHERE blocking_session_id <> 0
ORDER BY wait_time DESC



SELECT db_name(database_id),rqt.session_id,status,blocking_session_id,wait_type,last_wait_type,wait_resource,wait_time,TEXT
      FROM sys.dm_exec_requests rqt
      INNER JOIN sys.dm_exec_connections cnt
            ON rqt.session_id = cnt.session_id
      CROSS APPLY sys.dm_exec_sql_text(cnt.most_recent_sql_handle)
            WHERE blocking_session_id <> 0
ORDER BY wait_time DESC



SELECT * FROM sys.dm_exec_sql_text(sql_handle)  --  sql handle, pode ser obtido na sys.dm_exec_requests



SELECT db_name(database_id),rqt.session_id,rqt.status,blocking_session_id,wait_type,last_wait_type,wait_resource,wait_time,original_login_name,TEXT
      FROM sys.dm_exec_requests rqt
      INNER JOIN sys.dm_exec_connections cnt
            ON rqt.session_id = cnt.session_id
      INNER JOIN sys.dm_exec_sessions ss
            ON ss.session_id = cnt.session_id
      CROSS APPLY sys.dm_exec_sql_text(cnt.most_recent_sql_handle)
            WHERE rqt.STATUS like 'run%'
ORDER BY rqt.cpu_time DESC


Fonte: Site Edvaldo Castro
http://edvaldocastro.com/downloads/scripts/
https://drive.google.com/file/d/0BzIOoAnsymdJWmduYkp6YXVIV2c/view

segunda-feira, 16 de março de 2015


Para criar uma cópia completa do seu banco de dados MS-SQL Server 2008 que possui contratado junto a Locaweb, para uma base MS-SQL Server em seu computador/servidor local, siga as intruções abaixo:
IMPORTANTE: O Collation de ambas as bases de dados, destino e origem, devem ser iguais. Caso não sejam iguais ou não você saiba qual o Collation de suas bases, veja mais informações clicando aqui.
Este procedimento copiará tabelas, views, trigger, procedures e também os registros de suas tabelas. Também é válido para uma situação inversa, se houver a necessidade de copiar a estrutura e registros de um banco de dados MS-SQL Server local, para uma base de dados MS-SQL Server contratada junto a Locaweb, faça este mesmo procedimento



No banco de dados da hospedagem

Right-arrow-32.png Conecte a base MS-SQL Server 2008 que possui na Locaweb, usando o SQL Server Management Studio;
Right-arrow-32.png Selecione a base;
Right-arrow-32.png Clique com o botão direito do mouse sobre a base, selecione Tasks e, em seguida, clique em Generate Scripts.


Mssql2008importexport1.jpg


Right-arrow-32.png Na primeira tela do Script Wizard, clique em Next.
Right-arrow-32.png Na próxima tela, marque a opção Select specific database objects clique em Select All. e depois clique em Next .


Ssms1.jpg


Right-arrow-32.png Clique em Advanced .


Ssms2.jpg


Right-arrow-32.png Altere: "Script Collation" para "True" e "Script USE DATABASE" para "False"


Ssms3.jpg


Right-arrow-32.png Se sua base de dados possuir "Triggers" e "Procedures", altere a opção "Script Triggers" para "True" e clique em "OK", caso contrário, apenas faça as duas alterações citadas anteriormente e clique em "OK".


Ssms4.jpg


Right-arrow-32.png Selecione um local para salvar seu script.


Ssms5.jpg


Right-arrow-32.png Depois, clique em Next e Finish para finalizar este passo.




Executando o script em outro banco de dados

Right-arrow-32.png Após extrair o script com toda a estrutura da sua base dados, terá de executá-lo em sua base de dados local, ainda com o management studio aberto, siga o caminho apresentado na imagem abaixo e clique em "File..."


Ssms5.jpeg


Right-arrow-32.png Selecione o arquivo extraído da base de dados que possuí junto a Locaweb.


Ssms6.jpg


Right-arrow-32.png Selecione o banco dados onde serão executadas as querys do script aberto no management studio, desta forma todos os objetos (tabelas, triggers, procedures, views) serão criados em sua base de dados local, iguais aos que existem na base de dados MS-SQL Server da hospedagem.


Ssms7.jpeg


Right-arrow-32.png Selecione todo o conteúdo do script aberto em seu management studio e execute (tecla F5), atualize seu banco de dados e constatará que todos os objetos foram criados.


Efetuando o Import/Export dos Dados

Right-arrow-32.png Após executar os passos citados acima, chegou o momento no qual sua base de dados local, sincronizará as informações (registros) contidas na base de dados da hospedagem.
Right-arrow-32.png Selecione a base e clique com botão direito do mouse sobre ela, selecione Tasks e, em seguida, clique em Import Data .
Ssms9.jpg


Right-arrow-32.png Na primeira tela do SQL Server Import and Export Wizard, clique em Next.
Right-arrow-32.png Insira o endereço do servidor de origem, o login de usuário, a senha e selecione o nome do banco, em seguida, clique em Next.
Ssms10.jpg


Right-arrow-32.png Insira o endereço do servidor de destino, o nome de usuário, a senha de login, selecione o banco e, em seguida, clique em Next.
Ssms11.jpg


Right-arrow-32.png Selecione Copy data from... e, depois, clique em Next.
Ssms12.jpg


Right-arrow-32.png Clique no checkbox para selecionar todos os objetos (tabelas), se possuir alguma view como a "vw_usuario" exibida na imagem abaixo, não selecione, em seguida clique em Edit Mappings...
Ssms13.jpg


Right-arrow-32.png Marque as opções Append rows to the destination table e Enable Identity Insert, clique em OK e depois em Next.
Ssms14.jpg


Right-arrow-32.png Selecione Run Immediately, clique em Next e, depois, em Finish.
Ssms15.jpg



Ao Popular a base de dados com o Import/Export é possível que você receba uma das seguintes mensagens de erro :
Error 0xc0202009: Data Flow Task 1: SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80004005  Description: "The statement has been terminated.".
An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80004005  Description: "The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Nome_da_Constraint". The conflict  occurred in database "Nome_da_Base", table "dbo.Tabela", column 'Campo'.".
(SQL Server Import and Export Wizard)
Este Erro é Causado ao popular uma tabela que tenha uma chave estrangeira, porém os dados da tabela de origem destes dados ainda não tenha sido preenchida . Neste caso Sugerimos que desative as Constraints ativas e desative as mesmas somente para popular a basse . Após popular a base de dados com o import/export reative as constraints como informado neste Artigo .

Caso receba a mensagem "Failure inserting into the read-only column ColumnName" durante o import/export, será necessário alterar as propriedades 'identity' da chave correspondente a coluna informada no erro, para solucionar este problema, siga as orientações desta Wiki


Atenção: Caso não tenha o software SQL Server Management Studio 2008, você pode fazer o download da versão gratuita no site da Microsoft


Fonte Locaweb
http://wiki.locaweb.com.br/pt-br/Efetuando_um_import/export_no_SQL_2008