如何通过shell命令删除mysql数据库

76 mysql database linux shell ubuntu

我使用铁塔和sqlalchemy.我不断更新模式文件并删除并重新创建数据库,以便可以创建新模式.

每次我打开MySql查询浏览器并登录并删除数据库/模式.

如何在Ubuntu Linux中通过linux shell命令删除MySQL db/schema?

Ale*_*ner 134

请尝试以下命令:

mysqladmin -h[hostname/localhost] -u[username] -p[password] drop [database]
Run Code Online (Sandbox Code Playgroud)

  • 谢谢Alex.我添加了-f来强制删除 (13认同)
  • 您的密码可供系统上的任何其他用户访问.`ps aux`.考虑使用`.my.cnf`代替. (5认同)

Yad*_*ada 32

通常,您可以mysql使用-e选项从shell 传递任何查询.

mysql -u username -p -D dbname -e "DROP DATABASE dbname"
Run Code Online (Sandbox Code Playgroud)

  • 您的密码可供系统上的任何其他用户访问.`ps aux`.考虑使用`.my.cnf`代替. (5认同)
  • 或者只是记下这只适用于您是唯一用户的本地开发环境. (3认同)
  • DROP数据库不需要-D标志.它应该足够了:`mysql -uuser -ppass -e"DROP DATABASE dbname"` (2认同)

gah*_*ooa 25

如果您厌倦了输入密码,请创建一个(chmod 600)文件~/.my.cnf,然后输入:

[client]
user = "you"
password = "your-password"
Run Code Online (Sandbox Code Playgroud)

为了对话:

echo 'DROP DATABASE foo;' | mysql
Run Code Online (Sandbox Code Playgroud)

  • 虽然是开发环境,但我真的不太担心别人可以看到的密码.我非常喜欢你的.my.cnf想法.+1的想法 (2认同)

gah*_*ooa 13

另一种合适的方式

$ mysql -u you -p
<enter password>

>>> DROP DATABASE foo;
Run Code Online (Sandbox Code Playgroud)

  • 说明命令行上的可能性并不能保证投票.他正在使用MySql查询浏览器.不太一样. (4认同)

eng*_*ave 8

不需要mysqladmin:

只需使用mysql命令行

mysql -u [username] -p[password] -e 'drop database db-name;'
Run Code Online (Sandbox Code Playgroud)

这将发送drop命令,虽然我不会以这种方式传递密码,因为它将通过ps aux暴露给系统的其他用户