Problems getting PHP and MySQL to play nice

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • bodhiSoma

    Problems getting PHP and MySQL to play nice

    Hi all. Can't seem to get PHP to play nice with MySQL.

    First I logged into MySQL, created the db, switched to it and then
    granted (what I thought were) correct privileges:

    ----[%begin%]----

    Macintosh-7:~ jason$ /usr/local/mysql/bin/mysql -u root

    mysqlcreate database wes;
    Query OK, 1 row affected (0.00 sec)

    mysqluse wes
    Database changed

    mysqlgrant all privileges on wes.* to user@localhost identified by
    'changeme'
    -;
    Query OK, 0 rows affected (0.08 sec)

    ----[%end%]----

    I then created a bit of PHP to test this...

    ----[%begin%]----

    <?php

    $dbhost = 'localhost';
    $dbuser = 'user';
    $dbpass = 'changeme';

    $conn = mysql_connect($ dbhost, $dbuser, $dbpass) or die ('Error
    connecting to mysql');

    ?>

    ----[%end%]----

    But when I access that PHP page, I get:

    Warning: mysql_connect() [function.mysql-connect]: Can't connect to
    local MySQL server through socket '/var/mysql/mysql.sock' (2) in /
    Library/WebServer/Documents/wes/mysql_test.php on line 7
    Error connecting to mysql

    Any thoughts on what I'm doing wrong? I have checked to make sure
    Apache and PHP are running. I can access scripts through localhost
    just fine, the problem is only with MySQL.

    Thanks much in advance,
    Jason
  • J.O. Aho

    #2
    Re: Problems getting PHP and MySQL to play nice

    bodhiSoma wrote:
    But when I access that PHP page, I get:
    >
    Warning: mysql_connect() [function.mysql-connect]: Can't connect to
    local MySQL server through socket '/var/mysql/mysql.sock' (2) in /
    Library/WebServer/Documents/wes/mysql_test.php on line 7
    Error connecting to mysql
    This is a quite common error when the mysql daemon isn't running, check that
    it's still running and the socket file is created in /var/mysql direcotry.


    --

    //Aho

    Comment

    • bodhiSoma

      #3
      Re: Problems getting PHP and MySQL to play nice

      On Sep 26, 2:57 pm, "J.O. Aho" <u...@example.n etwrote:
      This is a quite common error when the mysql daemon isn't running, check that
      it's still running and the socket file is created in /var/mysql direcotry..
      >
      --
      >
         //Aho
      Hm.

      Well, I check OS X's System Preferences and for the MySQL prefs it
      says:

      "The MySQL Database Server is started and ready for client
      connections. ... The MySQL Server Instance is running."

      I also tried two other variables for $dbhost ("localhost:330 6" and ":/
      usr/local/mysql/bin/mysql.sock"). Neither worked.

      Any idea why it would be acting like it's not running when it is? =/

      Again, thanks,
      Jason

      Comment

      • bodhiSoma

        #4
        Re: Problems getting PHP and MySQL to play nice

        On Sep 26, 2:57 pm, "J.O. Aho" <u...@example.n etwrote:
        This is a quite common error when the mysql daemon isn't running, check that
        it's still running and the socket file is created in /var/mysql direcotry..
        >
        --
        >
           //Aho
        Oh, forgot to mention that there isn't a /var/mysql directory. I'm
        running OS X if that helps.

        Jason

        Comment

        • bodhiSoma

          #5
          Re: Problems getting PHP and MySQL to play nice

          On Sep 26, 2:57 pm, "J.O. Aho" <u...@example.n etwrote:
          This is a quite common error when the mysql daemon isn't running, check that
          it's still running and the socket file is created in /var/mysql direcotry..
          >
          --
          >
             //Aho
          Figured it out through a rather bovine method.

          Stopped the process then tried to connect by accident and got:

          Macintosh-7:/usr/local/mysql/bin jason$ /usr/local/mysql/bin/mysql -
          u root
          ERROR 2002 (HY000): Can't connect to local MySQL server through
          socket '/tmp/mysql.sock' (2)

          Well, there's my socket. Changed the PHP to reflect this with:

          $dbhost = ':/tmp/mysql.sock';

          ....and voila, connected.

          Thanks!!!,
          Jason

          Comment

          • Kenoli

            #6
            Re: Problems getting PHP and MySQL to play nice

            On Sep 26, 12:30 pm, bodhiSoma <bodhis...@gmai l.comwrote:
            On Sep 26, 2:57 pm, "J.O. Aho" <u...@example.n etwrote:
            >
            This is a quite common error when the mysql daemon isn't running, checkthat
            it's still running and the socket file is created in /var/mysql direcotry.
            >
            --
            >
               //Aho
            >
            Figured it out through a rather bovine method.
            >
            Stopped the process then tried to connect by accident and got:
            >
               Macintosh-7:/usr/local/mysql/bin jason$ /usr/local/mysql/bin/mysql-
            u root
               ERROR 2002 (HY000): Can't connect to local MySQL server through
            socket '/tmp/mysql.sock' (2)
            >
            Well, there's my socket.  Changed the PHP to reflect this with:
            >
               $dbhost = ':/tmp/mysql.sock';
            >
            ...and voila, connected.
            >
            Thanks!!!,
            Jason
            Glad you solved this. I got stuck on the same issue and figured it
            out after a bunch of stress and have noticed posts on other lists
            where people have had the same problem. Another way to deal with this
            is to create the directory php is looking for and put a symbolic link
            there to the socket file.

            --Kenoli

            Comment

            Working...