我试图从访问数据库向GoDaddy中的mysql数据库插入大约800万条记录。
我构建了一个桌面java应用程序来管理每次刷新5000条记录的插入内容。我使用Laravel 5.1来管理服务器中的插入。所以,基本上,java应用程序向laravel php路由发送请求,然后它负责直接插入我的MySQL数据库。
编辑:人们会将数据直接插入Access,因此我必须观察MDB文件的更改。这就是我无法从Access导出并导入MySQL的原因。
记录的第一部分成功插入,但是当我发送另一个请求时,我收到此错误:
2015-10-28 10:43:57.844 java[3475:280209] Communications error: <OS_xpc_error: <error: 0x7fff7298bb90> { count = 1, contents =
"XPCErrorDescription" => <string: 0x7fff7298bf40> { length = 22, contents = "Connection interrupted" }
}>
Got xpc error message: Connection interrupted
org.apache.http.NoHttpResponseException: api.mydomain.com:80 failed to respond
答案 0 :(得分:2)
确保已安装MySQL odbc连接器: https://dev.mysql.com/downloads/connector/odbc/
为你的MySQL服务器创建你的DNS(你可以通过odbc管理器或只需一个记事本) 您的DNS文件将如下所示:
[ODBC]
DRIVER=MySQL ODBC 5.3 Unicode Driver ' check what driver is installed
UID=username to the server
PORT=3306
PWD= password to the server
DATABASE=dbname
SERVER=serverip/name
将DNS文件保存在某处,我们称之为GoDaddy_MySQL.dns
打开您的ACCESS数据库。
您只需通过以下方式将数据从本地表上传到链接表:
您可以使用TOP关键字对上传进行分块。如果添加where条件(不在链表上),您可以随时自动将新记录上传到MySQL服务器。
如果您仍然使用Access数据库,您也可以从本地数据库切换到链接表,这样所有新条目都会自动上传到您的godaddy服务器。
Pseudo:
insert into linked_table select top 5000 from your local table where local_records_are not in linked table.
答案 1 :(得分:1)
尝试在GoDaddy服务器上运行的交错MySQL导入程序。像Bigdump一样:http://www.ozerov.de/bigdump/
Export from Access,导入MySQL。它直接在godaddy服务器上运行,因此数据已经在服务器上,然后才读取。我在GoDaddy上多次使用过大量进口货物。
干杯!