使用管理员仅用于创建另一个应用程序的多个实例的应用程序。
换句话说,app A
将用于app B
在服务器上创建克隆,并创建在子域上运行克隆的应用程序所需的所有配置new_clone.domain.com
。
管理克隆应用程序,创建apache
配置文件,unicorn server settings
文件。设法运行 rake db:create; db:migrate
,但我用root
mysql 用户做了这个。
在我克隆应用程序的时候,我database.yml
为新克隆的应用程序生成了一个文件,该文件此时具有username
并password
设置为root
,但我希望每个克隆的应用程序都有一个不同的用户。
应用程序 A 有一个名为 的模型Subdomain
,在subdomains_controller.rb
该create
操作中,我执行所有操作、克隆、生成配置文件、运行 rake 任务等……而且在此create
操作中,我需要创建一个Mysql
具有特定权限的新用户数据库。
到目前为止我已经尝试过,不能说我做了很多,我尝试在控制器创建操作中运行 mysql 命令:
def create
if @subdomain.save
....
system "mysql -u root -p root; create database new_database;..."
....
else
....
end
end
但这会使我的创建操作暂停,直到我输入密码,即使我能找到一种方法来解决它,我也不确定其余的 mysql 命令是否会起作用。可能有一种更好的方法可以在不进入 mysql 控制台的情况下使用一个命令行添加 Mysql 用户。
谢谢你。