65 votes

Comment importer un fichier .bak SQL Server dans MySQL?

Le titre est explicite. Existe-t-il un moyen de faire ce type d'importation directement?

67voto

Richard Harrison Points 14891

L' .BAK fichiers à partir de SQL server dans Microsoft Format de Bande (MTF) réf.: http://www.fpns.net/willy/msbackup.htm

Le bak fichier sera probablement contenir la LDF et les fichiers MDF SQL server utilise pour stocker la base de données.

Vous aurez besoin d'utiliser SQL server pour extraire ces. SQL Server Express est gratuit et va faire le travail.

Donc, installer SQL Server 2008 Express edition, utilisez l'utilitaire sqlcmd -S \SQLExpress (tout en étant connecté en tant qu'administrateur)

ensuite, exécutez la commande suivante.

restore filelistonly from disk='c:\temp\mydbName-2009-09-29-v10.bak';
GO

Cela va lister le contenu de la sauvegarde - ce que vous avez besoin est la première champs que vous dire les noms logiques - la base de données réelle et l'autre le fichier journal.

RESTORE DATABASE mydbName FROM disk='c:\temp\mydbName-2009-09-29-v10.bak'
WITH 
   MOVE 'mydbName' TO 'c:\temp\mydbName_data.mdf', 
   MOVE 'mydbName_log' TO 'c:\temp\mydbName_data.ldf';
GO

À ce stade, vous avez extrait de la base de données puis installez Microsoft "Sql Web Administrateur de Données". avec cet outil d'exportation et vous aurez un script SQL qui contient la base de données.

9voto

AutoCiudad Points 128

MySql a une application pour importer la base de données à partir de Microsoft SQL. Pas:

  1. Ouvrez MySql Workbench
  2. Cliquez sur "Migration de base de données" (s'il n'apparaît pas, vous devez l'installer depuis la mise à jour de MySql)
  3. Suivez la liste des tâches de migration à l'aide de l'assistant simple.

8voto

Je n'ai pas réussi à trouver un moyen de le faire directement.

Au lieu de cela, j'ai importé le fichier bak dans SQL Server 2008 Express, puis utilisé MySQL Migration Toolkit .

Travaillé comme un charme!

3voto

RollerCosta Points 1264
  1. Ouvrez SQL Server Management Studio sur votre ordinateur local.
  2. Cliquez-droit sur le dossier Bases de données. Dans le menu contextuel, sélectionnez Nouvelle Base de données.
  3. Entrez un nom de base de données, puis cliquez sur Ok.
  4. À droite, cliquez sur la nouvelle icône de base de données. Dans le menu contextuel, sélectionnez Tâches -> Restaurer -> Base de données.
  5. Sélectionnez l'option Du Périphérique, puis cliquez sur le bouton parcourir.
  6. Cliquez sur Ajouter, puis naviguez jusqu'au fichier approprié. Cliquez Sur Ok.
  7. Dans la Restauration de la Base de données de la fenêtre, sélectionnez la case à côté de votre fichier BAK.
  8. Passer à la page d'Options. Sélectionnez la Remplacer la base de données existante case. Cliquez Sur Ok.
  9. Vérifiez le contenu de votre base de données, qui est maintenant actif sur votre machine locale.

3voto

levi rosol Points 1901

Bien que mon expérience MySQL soit limitée, je ne pense pas que vous ayez beaucoup de chance en ce sens. Cependant, vous devriez pouvoir migrer sur toutes vos données en restaurant la base de données sur un serveur MSSQL, puis en créant un package SSIS ou DTS pour envoyer vos tables et vos données au serveur MySQL.

J'espère que cela t'aides

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X