2013-04-10 68 views
0

MySQL来我目前在Apache 2.2使用PHP 5 .. 我试图连接到MySQL我的Apache服务器上创建一个名为MY_DB数据库... 和我有以下代码:连接使用Apache和PHP

<?php 
$con=mysqli_connect(); 
// Check connection 
if (mysqli_connect_errno()){ 
echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
}else{ 
echo "Connected Successfully!"; 
} 
// Create database 
$sql="CREATE DATABASE my_db"; 
if (mysqli_query($con,$sql)){ 
echo "Database my_db created successfully"; 
}else{ 
echo "Error creating database: " . mysqli_error(); 
} 
?> 

然而,当脚本运行我得到下面的输出:

连接成功错误创建数据库:

请帮忙。自“连接成功!”以来不是验证问题!印...

三江源提前!

+0

也许你还没有在默认用户上创建数据库的权限 – 2013-04-10 16:05:12

+0

我会怀疑你登录的mysql用户没有CREATE权限。一个mysql用户可以有一个或一组许多不同的权限。 |你知道你有phpmyadmin吗? :HTTP://www.phpmyadmin.net/home_page/index.php的phpmyadmin将允许你管理MySQL容易得多。如果你不已经拥有了它,认为它具有安装或使用工具如Navicat的。 – azzy81 2013-04-10 16:05:13

+0

创建和删除数据库中一个应该有管理员权限。一探究竟 – troy 2013-04-10 16:07:29

回答

0

尝试在mysql命令行上创建新用户,授予此用户所有权限,然后以此新用户身份连接并尝试创建数据库。这应该可以解决你的问题。假设你连接到MySQL在本地主机上的代码,你需要创建新的用户:

bash# mysql --user=root -p 

mysql> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass'; 
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' WITH GRANT OPTION; 
0

您可以使用查询的用户权限的概述:

SHOW GRANTS FOR 'user'@'host';