我有一個連接到mysql數據庫的php文件。使用用戶名,密碼和所有權限從PHP創建MySQL數據庫
我需要創建一個條件,如果沒有找到數據庫,它會創建它。
我研究過,我發現如何用PHP創建數據庫。不過,我需要創建一個具有以下條件:
DB名稱,DB用戶,密碼和所有權限授予
有沒有一種方法,我怎麼能實現呢?
我有一個連接到mysql數據庫的php文件。使用用戶名,密碼和所有權限從PHP創建MySQL數據庫
我需要創建一個條件,如果沒有找到數據庫,它會創建它。
我研究過,我發現如何用PHP創建數據庫。不過,我需要創建一個具有以下條件:
DB名稱,DB用戶,密碼和所有權限授予
有沒有一種方法,我怎麼能實現呢?
你可以這樣做
$connection=mysql_connect('server','username',password);
$db_result=mysql_select_db('database');
if(!$db_result){
mysql_query("CREATE USER 'stackoverflow'@'localhost' IDENTIFIED BY 'mypass';",$connection); //user
mysql_query("GRANT ALL ON db1.* TO 'stackoverflow'@'localhost');"
mysql_query("CREATE DATABASE my_db",$connection); //create database
}else{
//Database is available
}
查看關於CREATE USER和GRANT的MySQL文檔。
這將是一個有點雞和蛋的問題。要通過PHP連接到MySQL,您需要一個有效的用戶名/密碼。但是你的程序可能會連接到一個沒有配置該用戶/密碼的數據庫,那麼如何能夠首先創建用戶/密碼/數據庫呢?
$connection=mysql_connect('server','username',password);
$db_result=mysql_select_db('database');
if(!$db_result){
mysql_query("CREATE USER 'stackoverflow'@'localhost' IDENTIFIED BY 'mypass';",$connection); //user
mysql_query("GRANT ALL ON db1.* TO 'stackoverflow'@'localhost');"
mysql_query("CREATE DATABASE my_db",$connection); //create database
}else{
}
OP理解這一點。他不知道如何創建數據庫權限和連接屬性。 – 2010-11-27 17:14:18