要开始从 PHP 使用 MySQL,我需要使用“mysql_connect”连接到 MySQL 服务器。这样做,我需要指定用户名和密码。但为此,我需要先创建一个带有密码的用户。我该怎么做?
连接到 MySQL 服务器后,我需要选择一个数据库。但为此,数据库必须存在。如何创建数据库?我可以从 PHP 中创建吗?
答案1
您可以使用 mysql 命令行客户端执行以下操作
MYSQL 创建数据库命令 -CREATE DATABASE mydbname
MYSQL 创建用户命令 - CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword'
;
MYSQL 分配用户权限命令 -GRANT ALL PRIVILEGES ON mydbname TO 'myuser'@'localhost';
你的 php 连接脚本应该是这样的
$dbuser = "myuser";
$dbpass = "mypassword";
$dbhost = 'localhost';
$dbname = "mydbname";
$db = mysql_connect ($dbhost,$dbuser,$dbpass);
mysql_select_db ($dbname,$db);
答案2
更新:由于您尚未安装 MySQL,这里有关于安装 PHP、Apache 和 MySQL 的说明。howtoforge.com
在创建数据库之前,您需要设置用户。这可能必须通过 mysql 本身或通过 ISP 控制面板来完成
添加用户的MySQL命令语法如下:
CREATE USER user [IDENTIFIED BY [PASSWORD] 'password']
[, user [IDENTIFIED BY [PASSWORD] 'password']] ...
然后,您可以使用 GRANT 命令来允许特定访问。语法如下:
GRANT
priv_type [(column_list)]
[, priv_type [(column_list)]] ...
ON [object_type] priv_level
TO user [IDENTIFIED BY [PASSWORD] 'password']
[, user [IDENTIFIED BY [PASSWORD] 'password']] ...
[REQUIRE {NONE | ssl_option [[AND] ssl_option] ...}]
[WITH with_option ...]
object_type:
TABLE
| FUNCTION
| PROCEDURE
priv_level:
*
| *.*
| db_name.*
| db_name.tbl_name
| tbl_name
| db_name.routine_name
ssl_option:
SSL
| X509
| CIPHER 'cipher'
| ISSUER 'issuer'
| SUBJECT 'subject'
with_option:
GRANT OPTION
| MAX_QUERIES_PER_HOUR count
| MAX_UPDATES_PER_HOUR count
| MAX_CONNECTIONS_PER_HOUR count
| MAX_USER_CONNECTIONS count
以下是使用 mysql_connect 连接数据库的方法:php.net
以下是使用 php 创建数据库的方法:php.net
答案3
http://dev.mysql.com/doc/refman/5.1/en/create-user.html
有一个命令可以设置root用户的密码,但我不记得它是什么了。
答案4
有很多很好的工具可以为您提供有关如何从命令行执行此操作的详细信息。您可能要考虑的另一种方法是设置phpMyAdmin或者Mysql 图形用户界面工具。这些界面将为您提供更简单的起点。