2015-04-23 106 views
0

有沒有辦法讓一臺特定的紅寶石(mysql gem)從一臺服務器複製到另一臺服務器(都是類似的服務器)?如何將紅寶石從一臺服務器複製到另一臺

在我的情況下,其他服務器是生產服務器,並且gem install mysql無法在那裏編譯,因爲rubymysqllib丟失,無法安裝構建依賴關係。

基本上我的問題是:我怎樣才能從一臺服務器複製寶石到另一臺服務器?

+1

如果由於服務器沒有適當的依賴關係而無法正常工作,那麼複製gem有什麼意義? –

+0

是的馬里克,你可能會糾正,但有沒有其他方式可以補償構建依賴關係。我已經有gem-compiler選項,它安裝了gem,但是在需要的時候我得到了下面的錯誤.LoadError:libmysqlclient.so.15:無法打開共享目標文件:沒有這樣的文件或目錄 -/path/.rvm/gems/ruby-1.9.3-p385/gems/mysql-2.9.1-x86_64 -linux/lib/mysql/mysql_api.so「 – user3467431

+0

嘗試卸載mysql gem並重新安裝它,它會重新編譯你的最新庫文件 –

回答

0

我無法弄清楚這是否是一種好的做法,但我有時會這樣做,並且有效。

要複製我剛剛複製的所有寶石,並從一臺機器複製到文件夾C:\Ruby187\lib\ruby\gems\(根據您的情況進行調整)。

要複製一個寶石,我走進gems文件夾,並複製相應文件夾內相同名稱(寶石)的文件。

C:\Ruby187\lib\ruby\gems\1.8\cache 
C:\Ruby187\lib\ruby\gems\1.8\doc* 
C:\Ruby187\lib\ruby\gems\1.8\gems* 
C:\Ruby187\lib\ruby\gems\1.8\specifications 
#*doc and gems are optional 

我發現的另一種方式,但我從來沒有這樣做,就像this

注意

當複製這樣的你是不是驗證依賴的寶石,它可能導致應用程序的不良行爲。

相關問題