我正在尝试使用 shell_exec 和 mysql 命令创建数据库。由于几个原因,我不想使用 php 内置的 mysql_query。但是,我无法成功执行以下命令。任何人都可以告诉我出了什么问题?
$test = shell_exec("mysql -u root -pmypassword create database db_hello;");
var_dump($test);
正确的语法是这样的:
mysql -u [username] -p -e "create database somedb"
或者
mysql --user=user_name --password=your_password -e "SELECT 1 FROM information_schema.tables"
参考:http ://www.electrictoolbox.com/run-single-mysql-query-command-line/
$cmd = escapeshellcmd('mysql -u [username] -p -e "create database somedb"');
$test = shell_exec($cmd);
var_dump($test);
问题可能是您的 php 脚本中 mysql 的路径。对我来说是:/usr/local/bin/mysqld (osx 10)