Jak exportovat data z SQL Server 2005 k MySQL

hlasů
80

Byl jsem bouchal si hlavu SQL Server 2005snaží získat velké množství dat ven. Dostal jsem databázi s téměř 300 tabulek v něm a musím proměnit tuto databázi MySQL. Můj první výzvy bylo použít BCP, ale bohužel to nevytváří platný CSV - struny nejsou uzavřené, takže nelze řešit libovolný řádek, který má řetězec s čárkou v něm (nebo cokoliv použít jako oddělovač) a já bych ještě po ruce psát všechny příkazy vytvořit tabulku, jako zjevně CSV není ti nic o datových typů.

To, co by bylo lepší je, když tam byl nějaký nástroj, který by mohl připojit k oběma SQL Server a MySQL, proveďte kopii. Ztratíte pohledy, uložené procedury, spouště, atd, ale to není těžké zkopírovat tabulku, která používá pouze základním typem z jednoho DB do jiného ... je to?

Ví někdo o takový nástroj? Nevadí mi, kolik předpoklady to dělá, nebo co zjednodušení nastat, pokud to podporuje integer, float, datetime a řetězec. Musím udělat hodně prořezávání, normalizace, atd stejně, takže nemám starat o udržení klíče, vztahy nebo něco takového, ale musím počáteční sadu dat v rychle!

Položena 01/08/2008 v 17:22
zdroj uživatelem
V jiných jazycích...                            


5 odpovědí

hlasů
7

Válcování vlastní PHP řešení bude jistě fungovat i když si nejsem jistý, jestli je to dobrý způsob, jak automaticky kopírovat schéma z jednoho DB k druhému (možná to byla vaše otázka).

Pokud jste právě kopírování dat, a / nebo budete potřebovat vlastní kód tak jako tak pro konverzi mezi modifikovaných schémat mezi oběma DB, bych doporučil používat PHP 5.2+ a knihovny CHOP. Budete moci připojit pomocí CHOP ODBC (a použít ovladače MSSQL). Měl jsem hodně problémů dostat velkých textových polí a multi-byte znaky z MSSQL do PHP pomocí jiných knihoven.

Odpovězeno 01/08/2008 v 17:36
zdroj uživatelem

hlasů
5

Dalším nástrojem, aby se pokusili by SQLMaestro suite - http://www.sqlmaestro.com Je to trochu složitější přibití dolů přesný nástroj, ale mají celou řadu nástrojů, a to jak zdarma a za nákup, který zvládne širokou škálu úkolů pro více databázových platforem. Navrhoval bych se snaží nástroj Průvodce dat nejprve pro MySQL, protože se domnívám, že bude mít správnou „import“ nástroj, který potřebujete.

Odpovězeno 01/08/2008 v 17:47
zdroj uživatelem

hlasů
58

Nejlepší způsob, který jsem našel je Toolkit MySQL migrace poskytuje MySQL. Jsem ji úspěšně použita u některých velkých projektů migrace.

Odpovězeno 01/08/2008 v 18:54
zdroj uživatelem

hlasů
8

SQL Server 2005 „Standard“, „Developer“ a „podnik“ verze mají SSIS , který nahradil DTS z SQL Server 2000. SSIS má zabudovaný v návaznosti na jeho vlastní DB, a můžete najít spojení, které někdo jiný napsal pro MySQL , Zde je jeden příklad. Jakmile máte připojení, měli byste být schopni vytvořit SSIS balíček, který se pohybuje data mezi těmito dvěma.

Neměl jsem přesunout data z SQLServer k MySQL, ale jsem si představit, že po instalaci připojení MySQL, to funguje stejně jako přenášení dat mezi dvěma SQLServer DB, což je docela rovně vpřed.

Odpovězeno 15/09/2008 v 17:11
zdroj uživatelem

hlasů
8

Pomocí MSSQL Management Studio jsem přešli tabulky s MySQL OLE DB. Klikněte pravým tlačítkem myši na databázi a přejděte na „Tasks-> Exportovat data“ odtud můžete určit zdroj MsSQL OLE DB zdroj MySQL OLE DB a vytvořit mapování sloupců mezi těmito dvěma datovými zdroji.

Budete s největší pravděpodobností chtít nastavení databáze a tabulky předem na místo určení MySQL (vývoz bude chtít, aby automaticky vytvořit tabulky, ale to má často za následek selhání). Můžete rychle vytvořit tabulky v MySQL pomocí „Tasks-> vytvořit skripty“ kliknutím pravým tlačítkem myši na databázi. Jakmile jsou vaše tvorba skriptů generovány budete muset procházet a hledat / nahradit klíčová slova a typy, které existují v MSSQL do MySQL.

Samozřejmě můžete také zálohování databáze jako normální a najít nástroj, který obnoví zálohu MSSQL na MySQL. Nejsem si jistý, jestli existuje nicméně.

Odpovězeno 15/09/2008 v 17:23
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more