【问题标题】:How to connect to my database sql file from my localhost?如何从我的本地主机连接到我的数据库 sql 文件?
【发布时间】:2013-11-29 23:24:29
【问题描述】:

我正在尝试通过 php 连接到我的数据库。我按照说明将我的 php 数据库导出为 sql 文件。我试图去连接它并显示我正在连接的消息。但是我不是。

我在 netbeans 中运行我的 php,文件位于 wamp > www

它说 ERROR: SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)

<?php
try {
$conn = new 
PDO('mysql:host=localhost;dbname=isad235', "root", 
"root");
echo "CONNECTED";
$sql = "SELECT * FROM members";
foreach($conn->query($sql) as $row)
{
  echo $row;
}
}catch(PDOException $e)
{
 echo 'ERROR: '.$e->getMessage();
}
?>

【问题讨论】:

    标签: php mysql sql localhost wamp


    【解决方案1】:

    这对我有用。它不起作用,您需要检查您的凭据。

    class db {
        public static function dbFactory($host, $dbase, $user, $pass) {
            $pdo = new PDO("mysql:host=$host;dbname=$dbase", $user, $pass);
            $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
            $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);        
            return $pdo;
        }
    }
    $db = db::dbFactory('localhost','mydbname','myusername','mypassword');
    

    顺便说一句,您无法连接到 sql 文件。您需要将其导入您的 dbms。之后你应该可以连接了。

    【讨论】:

    • 如何将 sql 文件放入我的 dbms?在沼泽上
    • 一个简单的方法是使用phpmyadmin。我不知道你在你的机器上安装了什么来获得“wamp”。但是您应该可以在浏览器中打开http://localhost/phpmyadmin。登录,创建一个新数据库,选择数据库,点击导入,选择你的文件,数据库应该被导入到你的dbms。
    【解决方案2】:

    如果您想通过 PHP 导入 *.sql 文件,您应该在 exec(); PHP 函数中运行以下 MySQL 查询:

    exec('mysql db_name < script.sql);
    

    【讨论】:

      【解决方案3】:

      然后您需要创建一个用户。错误消息可以帮助您 - 弄清楚它在说什么并对此做一些事情。在我看来,您对代码背后的数据库一无所知。您必须创建一个数据库,然后创建用户以使用该数据库。您看起来像是在使用默认的 root 用户 - 您确定您的数据库版本实际上具有这些设置吗?某些版本的 MySQL 有 root 并且没有密码,其他版本有 root 和 root 密码。看看你的是什么。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-27
        • 2014-04-30
        • 1970-01-01
        • 1970-01-01
        • 2016-02-15
        • 1970-01-01
        • 2018-09-16
        • 2019-03-25
        相关资源
        最近更新 更多