我使用下面的脚本
创建用户$conn = mysqli_connect('host', 'root', 'password');
$dbName = "userdb";
$dbUser = "username";
$dbPass = "password";
$queries = array(
"CREATE DATABASE `$dbName` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci",
"CREATE USER '$dbUser'@'localhost' IDENTIFIED BY '$dbPass'",
"GRANT USAGE ON * . * TO '$dbUser'@'localhost' IDENTIFIED BY '$dbPass' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0",
"GRANT CREATE, SELECT , INSERT , UPDATE, DELETE ON `$dbName` . * TO '$dbUser'@'localhost'",
"GRANT ALL PRIVILEGES ON *.* TO '$dbUser'@'%' IDENTIFIED BY '$dbPass'",
"FLUSH PRIVILEGES"
);
foreach($queries as $query) {
$rs = mysqli_query($conn, $query);
}
使用此脚本用户成功创建。
如何使用php script
来更改此用户密码?
答案 0 :(得分:3)
您可以使用以下PHP脚本更改MySQL数据库的密码:
$conn = mysqli_connect('host', 'root', 'password');
$dbUser = "username"; # same username as in your example
$dbPass = "new_password"; # new password
$queries = array(
"USE mysql;", # switch to the 'mysql' database
"SET PASSWORD FOR '$dbUser'@'localhost' = PASSWORD('$dbPass');"
);
foreach($queries as $query) {
$rs = mysqli_query($conn, $query);
}
请注意,这里没有任何神奇的事情发生。我们正在改变用户密码,就像我们通常从MySQL提示一样,除了我们用PHP代替它。