2009-06-13 158 views
0

我已经负责将客户的MS SQL/ASP网站迁移到PHP/MYSQL。我对MS SQL没有经验。从MS SQL迁移到MySQL:SQLOLEDB?迁移工具包登录错误?

我想弄清楚将当前数据迁移到MySQL的最佳方式,以便我可以开始PHP开发。

一些细节:

  • 我下载的SQL Server管理CHINESE Studio Express的。我在连接文件中找到以下字符串:

    MM_connCompanyName_STRING =“provider = SQLOLEDB; data source = IP_ADDRESS; database = DATABASENAME; uid = USERNAMEpwd = PASSWORD;”

  • 使用此字符串的IP,用户名和密码,我可以使用Studio Express成功连接。

  • 我下载了MySQL的迁移工具包,并输入了相同的信息,但得到以下错误:

    连接到源数据库和检索图式的名字。 初始化JDBC驱动程序... 驱动程序类MS SQL JDBC驱动程序 打开连接... 连接jdbc:jtds:sqlserver:// IP_ADDRESS:1433/DATABASENAME; user = USERNAME; password = PASSWORD;“; charset = utf- 8,域名= 架构名称列表无法检索(错误:0) ReverseEngineeringMssql.getSchemata:登录失败,用户“USERNAME”

  • 我没有管理员或物理访问当前。 SQL server。我试图通过Studio Express运行一些导出,但它将它们保存到我无权访问的文件系统中。

  • I 可以到达当前/旧的网站管理员,但因为他不再为公司工作,他的回应很慢,通常没有帮助。所以没有帮助...

  • 前管理员发给我一个MDF文件...不知道该怎么做。
  • 我发现这个便条高于当前服务器上的连接信息(如果它意味着什么):

'this connection is being used because ODBC was causing weird errors, switching to OLEDB fixed them

我的问题:

  1. 任何想法,为什么会用相同的被失败适用于Studio Express的登录凭证?我假设它与驾驶员有关,但我不知道接下来要采取的措施。
  2. 有没有更好/更简单/更有效的方法来迁移这些数据? (我希望我没有发现自己在Studio Express中运行“SELECT *”语句并将数据复制/粘贴到Excel中...请上帝,否)

在此先感谢您的帮助。

回答

0

我相信你可以从MSSQL中导出数据,选择不同的SQL方言;我相信有一个合理的MySQL兼容。当然,它并不能解决所有的问题,因为虽然你可以正确地获得结构,但是存储过程和触发器等等需要更多的工作。但是这应该让你开始。

+0

我刚刚添加了一些细节问题:不幸的是,我试图通过Studio Express运行导出,但它将文件保存在本地文件系统上 - 我无法访问。 – jmccartie 2009-06-13 22:41:21

1

Eww,这将是可怕的(连接字符串表示它是由Dreamweaver生成的工具,从来不是一个好迹象)。

任何想法哪个版本的SQL Server?你应该能够SELECT @@ VERSION。 10.x是2008,9.x是2005和8.x是2000.如果是7.x运行。

MDF文件是实际的数据库。如果我是你的话,我会购买SQL 2005的开发者版本(如果是2008年的话,不会是8),它的价值将达到99美元左右。

这将使您能够通过附加MDF文件在本地安装数据库。一旦你有一个本地运行的副本,你可以使用带有MySql ODBC驱动程序的SQL Server ETL工具以可重复的方式将数据推送到MySql。

+0

我在版本8.所以安装2005年的开发版本,并创建一个Sql Server的本地实例?我需要的是中密度纤维板? – jmccartie 2009-06-17 00:45:39