如何动态地从Fabric创建mysql数据库

boc*_*cca 9 mysql sql fabric

是否可以动态地从结构创建mysql数据库.

这似乎在密码提示下卡住了

run('mysql -u %s -p %s -h %s  ' % (env.mysqluser, env.mysqlpassword, env.mysqlhost), pty=True)
run('CREATE DATABASE %s; ' % (dataname), pty=True)
run('exit', pty=True)
Run Code Online (Sandbox Code Playgroud)

小智 21

使用mysqladmin有一个更好的方法:

run('mysqladmin -u %s -p%s create %s' % (user, password, dbname))
Run Code Online (Sandbox Code Playgroud)


Con*_*ler 5

试试吧

run('echo "CREATE DATABASE %s;"|mysql --batch --user=%s --password=%s --host=%s' % (dataname, env.mysqluser, env.mysqlpassword, env.mysqlhost), pty=True)
Run Code Online (Sandbox Code Playgroud)

  • 考虑到我的检查并没有看到它不会证明它没有存储在任何地方,更好的解决方案是问你(你可能知道更多关于这一点)而不是假设我检查了每个地方这样一个关键的安全漏洞可能表明,更不用说并非所有看到这一点的人都倾向于去检查自己的麻烦.感谢您的回答(并且,为了记录,我没有在shell日志中看到密码或命令). (14认同)
  • 这不会在shell历史记录日志中保存密码吗? (5认同)