回答
我们目前正在使用Workbench/J成功搭配Redshift。
关于转储,当时在Redshift中没有可用的模式导出工具(pg_dump不起作用),尽管数据总是可以通过查询提取。
希望能提供帮助。
编辑:请记住,排序和分配键之类的东西不反映在由Workbench/J生成的代码上。看看系统表pg_table_def
以查看每个字段的信息。它指出,如果一个字段是sortkey或distkey,以及这样的信息。文档该表:
http://docs.aws.amazon.com/redshift/latest/dg/r_PG_TABLE_DEF.html
我成功使用Workbench/J并可以确认它的工作。 – 2013-05-14 22:12:43
不确定你为什么说pg_dump不起作用;它对我来说工作得很好,虽然正如你所说的Workbench/J,distkey/sortkey也不包括在内。 – congusbongus 2014-08-01 06:39:08
模式的pg_dump
可能不会在过去的工作,但现在这样。
pg_dump -Cs -h my.redshift.server.com -p 5439 database_name > database_name.sql
买者自负:pg_dump
仍然会产生一些Postgres的特定的语法,也忽略了红移SORTKEY
和DISTSTYLE
定义为你的表。
另一个不错的选择是use the published AWS admin script views生成您的DDL。它处理SORTKEY/DISTSTYLE,但是我发现它在捕获所有FOREIGN KEY时会出错,并且不处理表权限/所有者。你的milage可能会有所不同。
为了获得数据本身的转储,不幸的是您仍然需要在每个表上使用UNLOAD
command。
这是一种生成它的方法。要知道,select *
语法会失败,如果你的目标表不具有相同的列顺序为您的源表:
select
ist.table_schema,
ist.table_name,
'unload (''select col1,col2,etc from "' || ist.table_schema || '"."' || ist.table_name || '"'')
to ''s3://SOME/FOLDER/STRUCTURE/' || ist.table_schema || '.' || ist.table_name || '__''
credentials ''aws_access_key_id=KEY;aws_secret_access_key=SECRET''
delimiter as '',''
gzip
escape
addquotes
null as ''''
--encrypted
--parallel off
--allowoverwrite
;'
from information_schema.tables ist
where ist.table_schema not in ('pg_catalog')
order by ist.table_schema, ist.table_name
;
确实,pg_dump现在可以工作 – gauravphoenix 2016-02-05 00:59:44
如果您使用的是Mac,我使用Postico和它的伟大工程。只需右键单击表格并单击导出。
是的,你可以通过几种方式来做到这一点。
UNLOAD()到S3桶 - 这是最好的。您几乎可以在任何其他机器上获得您的数据。 (更多信息在这里:http://docs.aws.amazon.com/redshift/latest/dg/r_UNLOAD.html)
使用您拥有的Linux实例将表中的内容传输到数据文件。 因此,运行:
$> PSQL -t -a -f 'your_delimiter' -h '主机名' -D '数据库' -U '用户' “SELECT * FROM myTable的” -c >> /家庭/用户A/tableDataFile 将为你做的伎俩。
- 1. 有没有办法从java执行SQL脚本?
- 2. 有没有办法查看Rapid SQL对存储过程执行的SQL?
- 3. 有没有办法打印JDBC执行的所有SQL语句?
- 4. 有没有办法执行reloadOperatingSystem
- 5. 有没有办法从服务中运行可执行文件?
- 6. 有没有办法从powershell脚本运行可执行文件?
- 7. 有没有办法在SQL Server中执行FIRST()?
- 8. 有没有办法在Erlang中执行XML转换?
- 9. 有没有办法来转储从调试器流VS
- 10. 有没有办法确定Amazon AWS EC2实例运行多久?
- 11. 有没有办法从java执行Objective-C应用程序?
- 12. 有没有办法从Eclipse执行一个linux命令
- 13. 有没有办法从NSObject类执行Segue
- 14. 有没有办法从运行的ruby进程转储内存中的对象?
- 15. JMAP转储没有在java执行:runtime.exec()
- 16. Amazon SimpleDB - 有没有办法列出域中的所有属性?
- 17. 有没有办法从APP
- 18. 有没有办法转储所有的物理内存值?
- 19. 有没有办法转储所有州/省/地区?
- 20. 在Amazon Redshift中延迟执行SQL脚本
- 21. 如何在Amazon Redshift上执行预定的SQL脚本?
- 22. Amazon Redshift COPY与转换
- 23. 有没有办法在numpy中执行这种subsampling算法?
- 24. 有没有办法监听另一个类的方法执行?
- 25. 有没有办法在执行JavaScript时回显每一行JavaScript?
- 26. 有没有办法执行所有可能的语句?
- 27. 有没有办法在Textmate中从方法跳转到方法?
- 28. 有没有办法让SQL Server存储过程自动出错?
- 29. 有没有办法转储g ++编译程序的类布局
- 30. 有没有办法用Xcode打开(任意)核心转储?
以下是亚马逊的评论主题:https://forums.aws.amazon.com/message.jspa?messageID = 428466#428466 – 2013-05-22 16:38:16