我正在尝试创建一个批处理文件来创建MySQL数据库。到目前为止,我找到的所有信息都没有起作用。只是为了测试,这就是我想要的......
C:\>mysql -uroot -ppassword < CREATE DATABASE testdb;
C:\>mysql -uroot -ppassword mysql < CREATE DATABASE testdb;
无论我怎么说,我都会收到错误“系统无法找到指定的文件”。如果我只是把......
C:\>mysql -uroot -ppassword
它登录MySQL提示正常。我究竟做错了什么?
我同意其他海报,将架构放入文件会好得多。但是,您可以在命令行上执行以下操作:
mysql -uroot -ppassword -e "CREATE DATABASE testdb"
以root用户身份访问:
mysql -u root -p
它要求输入密码。输入密码
然后像这样运行create命令:
mysql> create database database_name;
尝试将您的sql放入文本文件,如'createDb.sql',然后运行:
mysql -uroot -ppassword < createDb.sql;
最好将MySQL写入文件中,然后导入该文件。这样,当您需要再次运行它(重新安装或迁移)时,您将拥有要运行的MySQL的记录。我用于这样的文件的代码如下,它会破坏已存在的任何内容,然后创建数据库并分配专用用户。
# uninstall if anything's already there
GRANT ALL PRIVILEGES ON *.* TO 'username'@'%';
DROP USER 'username'@'%';
DROP DATABASE IF EXISTS `tablename`;
# create the user
CREATE USER 'username'@'%' IDENTIFIED BY 'password';
CREATE DATABASE IF NOT EXISTS `tablename`;
GRANT ALL PRIVILEGES ON `tablename` . * TO 'username'@'%';