Pergunta

Existe um esquema equivalente e exportação de dados / ferramenta de dumping para SQL Server como existe para o MySQL com mysqldump. Tentando mudar um site ASP legado e eu sou maneira fora do lugar feliz com o trabalho em um servidor Windows.

Nota: A DTS utilitário de exportação próprio parece exportar dados, sem defs tabela. Usando o Enterprise Manager e exportar o db se aproxima com a exportação do esquema e de dados ... mas ainda sente falta de procedimentos armazenados.

Basicamente procurando um faz tudo solução que agarra tudo que eu preciso de uma só vez.

Foi útil?

Solução

A maneira mais fácil é o assistente de publicação de banco de dados SQL Server.

  • Open source
  • Free
  • faz exatamente o que você quer
  • desenvolvido pela Microsoft

Ele não tem todas as características de mysqldump mas é perto o suficiente.

http://www.codeplex.com/ sqlhost / wiki / view.aspx? title = banco de dados% 20publishing% 20wizard

Outras dicas

Para fazer isso muito facilmente com o SQL Server 2008 Management Studio:

1) Botão direito do mouse no banco de dados (não a tabela) e selecione Tarefas -.> Gerar scripts

localização da ferramenta

2.) Clique em Avançar na primeira página

3). Se você deseja copiar todo o banco de dados, basta clicar em Avançar. Se você deseja copiar tabelas específicas, clique em "Selecionar objetos banco de dados específico", selecione as tabelas que você quer e clique em Próximo.

4.) "Save to File" deve ser selecionada. IMPORTANTE : Clique no botão Avançado ao lado de "Save to File", encontrar "Tipos de dados para script", e mudança "esquema apenas" para "esquema e dados" (se você quiser criar a tabela ) ou "única dados" (se você está copiando dados para uma tabela existente).

adicionar dados ao script

5.) Clique com o descanso e está feito! Ele vai salvar como um arquivo .sql.

A maneira mais fácil para mover um banco de dados seria usar SQL Server Management Studio para exportar o banco de dados para outro servidor, ou se isso não funcionar, faça um backup como outros do havia sugerido e restaurá-lo em outro lugar.

Se você está procurando uma maneira para despejar a estrutura da tabela de SQL, bem como criar inserir scripts para os dados de uma boa opção livre seria usar amScript e amInsert de http://www.asql.biz/en/Download2005.aspx .

Se você quiser uma versão boa remuneração GOSTARIA check-out Red-Gate SQL Compare e Red-Gate SQL-Data Compare. Estas ferramentas são provavelmente um exagero embora e, provavelmente, um pouco caro se você não pretende usá-los muito. Eu acho que seria principalmente ser relegado para DBAs. Você pode olhar para as ferramentas Red-Gate em http://www.red-gate.com/ .

Não encontrando a ferramenta certa, eu decidi criar minha própria: um utilitário de linha de comando sqlserverdump. Confira no http://sqlserverdump.codeplex.com/ .

mais fácil Mesmo é usar a API SMO. Ele permite que você faça exatamente como mysqldump, e ainda melhor. Aqui está um exemplo de código:

http://samyem.blogspot.com /2010/01/automate-sql-dumps-for-sqlserver.html

Bem, Mysqldump é uma série de instruções SQL. Você pode fazer isso com DTS, mas porque não basta criar um backup e restaurá-lo em sua máquina nova?

Se você quiser fazê-lo através de SQL: http://msdn.microsoft.com/en-us /library/aa225964(SQL.80).aspx

Ou apenas clique direito as tarefas DB e golpes -> Backup ( http: //msdn.microsoft.com/en-us/library/ms187510.aspx )

mais fácil seria um backup e restaurar ou separação e anexar

ou script todas as mesas e BCP os dados, em seguida, BCP nos dados sobre o novo servidor

ou uso DTS / SSIS para fazer isso

SQL Enterprise Manager ou SQL Server Management studio ter assistente abordagens, e este último irá gerar os scripts para que você possa ver como seu feito.

Você também pode usar o backup ea restauração comandos. Mais detalhes aqui: http://msdn.microsoft.com/en-us/ biblioteca / ms189826.aspx

Se você pode obter DTS ou Integration Services para conectar a ambos os servidores, você pode usar os assistentes para 'copiar objetos' de um servidor para outro. 'Copiar banco de dados' requer que os dois servidores podem autenticar um com o outro, o que normalmente significa estar no mesmo domínio e que as corridas de serviços sob um logon de domínio.

Caso contrário, você pode gerar um script para o esquema, e você pode usar um pacote Integration Services / DTS para exportar dados para um arquivo, em seguida, importá-lo por outro.

Temos agora geralmente usam SQL Compare e dados SQL Compare . da Red Gate SQL Packager também pode ser uma opção.

Duas coisas um backup / restore não vai fazer:

  1. Saia de um servidor Microsoft, que fazia parte da pergunta original
  2. Ajuda encontrar rapidamente uma diferença estrutural entre dois bancos de dados que são supostamente para têm a mesma estrutura quando um de -los está sendo executado lentamente. Unix diff, ou sdiff, ignorando o espaço em branco, mas precisa encontrar uma maneira de fazer arquivos de entrada.

Se você precisar de instruções SQL equivalentes como CREATE TABLE ... & INSERT INTO ..., então eu recomendo que você tente HeidiSQL. É um utilitário fantástico e livre que pode acessar o Microsoft SQL Server, MySQL e PostgreSQL. Ele permite que você navegar e editar dados, criar e editar tabelas, exibições, procedimentos, triggers e eventos programados. Além disso, você pode exportar a estrutura e os dados para o arquivo SQL. http://www.heidisql.com

Vá para Ferramentas / banco de dados Exportar como SQL e selecione o esquema. Marque a caixa para criar as tabelas e dados “Inserir”. É isso.

Eu prefiro HeidiSQL para "Microsoft SQL Server Management Studio" ou phpMyAdmin ... etc.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top