2012-02-24 117 views
2

我在網上搜索並發現了各種python + tap解決方案,這些解決方案應該使我可以轉儲存儲桶中的所有密鑰,但它們都不適用於我。我在端口11230有一個存儲桶,我需要獲得所有密鑰的轉儲,以便將它們填充到獅身人面像搜索引擎中。Couchbase(ex。membase)解決方案轉儲存儲桶中的所有密鑰

如果我執行:

# python /opt/couchbase/lib/python/tap_example.py 127.0.0.1:11230 

我得到以下輸出:

info: New bin connection from None 
error: uncaptured python exception, closing channel <tap.TapConnection connected at 0x7f5d287184d0> (<type 'exceptions.AssertionError'>: [/usr/lib/python2.6/asyncore.py|read|78] [/usr/lib/python2.6/asyncore.py|handle_read_event|428] [/opt/couchbase/lib/python/mc_bin_server.py|handle_read|325]) 

這個錯誤是一樣的,即使我嘗試一些其他的主機或端口。我還嘗試了許多其他的Python腳本,我在論壇和組中發現了它們,但是它們都產生了相同的錯誤。

我的主要開發環境包括PHP & Perl在Debian linux中,但我會採取任何解決方案,只是將所有密鑰轉儲爲純文本文件。

謝謝你的幫助!

回答

1

最新回覆,但您可以使用couchbase查看。

function (doc, meta) { 
    if(meta.type == 'json') { 
    emit(doc.key, null);  
    } 
} 

這會發出json桶中的每個密鑰。