sql转储文件..加载到mysql
Posted
技术标签:
【中文标题】sql转储文件..加载到mysql【英文标题】:sql dump file.. load to mysql 【发布时间】:2011-11-16 14:35:23 【问题描述】:首先,请假设这是我第一次在 SQL 中编写单个字母的代码。所以请拜托...如果你能解释我的每一步,那将是非常友好的。 :) 我正在使用 mac 进行此开发。 所以在桌面上,我有一个巨大的(1.5GB)数据库转储文件。 我有 mysqlworkbench(是的,我也从来没有在那个工作过:() 我已经安装了 MySQLdb。 所以,基本上我想做的是使用python数据库中的数据。 所以我有 python .. mysqldb 连接到 db .. 巨大的 db 和 mysqlworkbench .. 现在我假设,这个转储文件没有用,因为它不是数据库的形式。 那么我如何将这个转储“挂载”到数据库..(mysqlworkbench) 之后我如何从python查询.. (如端口号..用户名,密码!!?) 如果有人可以帮助我,那将是巨大的帮助。我从早上开始就被困在这里面了。:(
【问题讨论】:
文件是如何开始的? (这样您就可以澄清您的意思,因为您是 SQL 新手)。 (由于 5 分钟后无法编辑 cmets,所以我再次问一个已编辑的问题)... 文件是如何开始的? (这样您就可以澄清您的意思,因为(我假设)您是 SQL 新手)。您可以通过键入“head ”来执行此操作。它是否以“CREATE DATABASE”开头? 嗨.. head为了使用文件中的数据,需要将其导入数据库。 (将文件想象成 MySQL 创建数据库的配方。现在您需要告诉 MySQL 从配方中创建数据库)。
您可以使用命令行、python 脚本甚至 MySQL 工作台导入数据库。但是,由于文件的大小,使用 MySQL 工作台可能会出现问题(注意:我对 MySQL 工作台不熟悉)。
要使用命令行导入数据库,请使用以下命令:
mysql -u <username> -p -h localhost king_tracking < <filename>
要在 python 中实际使用数据库,有几个分步教程可用,可从google search 轻松访问。一个基本脚本是 (from here)
import MySQLdb
conn = MySQLdb.connect (host = "localhost",
user = "testuser",
passwd = "testpass",
db = "test")
cursor = conn.cursor ()
cursor.execute ("SELECT VERSION()")
row = cursor.fetchone ()
print "server version:", row[0]
cursor.close ()
conn.close ()
这只是显示 MySQL 的版本,但是如果
"SELECT VERSION()"
替换为你自己的查询,比如
"SELECT * FROM <tablename> LIMIT 0,30"
您可以执行自己的查询。
为了理解连接 python 和 MySQL 的教程,你应该分别熟悉两者。一个好的SQL tutorial 是the one at W3schools。
创建表的问题与原始问题不同,但在尝试将文件导入数据库之前可能需要解决。
【讨论】:
以上是关于sql转储文件..加载到mysql的主要内容,如果未能解决你的问题,请参考以下文章
从一个非常大的 MySQL 转储文件中以 csv 格式获取数据