Capistrano:将本地mysql数据库同步到远程mysql数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Capistrano:将本地mysql数据库同步到远程mysql数据库相关的知识,希望对你有一定的参考价值。

This could be further abstracted to work with other db's. Also, it really should be using Ruby's Tempfile class instead of assuming the local machine is *NIX based, but it works :)
  1. namespace :db do
  2. task :sync_to_local, :roles => :web do
  3. sql_out = "#{environment_database}.sql"
  4. run "mysqldump --user #{dbuser} --password=#{dbpass} #{environment_database} > #{sql_out}"
  5. system "sftp #{user}@myhost.com:#{sql_out} /tmp/#{sql_out}"
  6. run "rm #{sql_out}"
  7. system "mysql -u #{dbuser} --password=#{dbpass} mydatabase_development < /tmp/#{sql_out}"
  8. system "rm /tmp/#{sql_out}"
  9. end
  10. end
  11.  
  12. # invoked: cap production db:sync_to_local

以上是关于Capistrano:将本地mysql数据库同步到远程mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何将本地 MySQL 数据库同步到 Amazon RDS 数据库?

从阿里云RDS MySQL在线迁移数据到本地MySQL

本地MySQL数据库怎么与远程MySQL数据库同步

用capistrano+Nginx+Passenger+MYSQL部署rails到VPS。

如何将RDS的数据同步到本地自建数据库

mysql主从同步