tags:

views:

41

answers:

1

This is weird. I have 2 centos boxes, prod (192.168.0.1) and vm (192.168.0.30). Mysql database sits on prod. App sits on vm. From vm, if I type

mysql -u user -p -h 192.168.0.1 -D mydb

it connects lovely, so port is open and listening on prod but in app, i do

$db=new mysqli('192.168.0.1','user','mypass','mydb');

and I get

Warning: mysqli::mysqli() [function.mysqli-mysqli]: (HY000/2003): Can't connect to 
MySQL server on '192.168.0.1' (13) in /var/www/vhosts/myapp/httpdocs/dstest.php 
on line 123

Both boxes have exactly same versions php, mysql, mysql.so, mysqli.so

Any advice?

P.S. This also happens if I try $db=new mysqli('127.0.0.1',... BUT NOT if I try $db=new mysqli('localhost',...

in case it helps, here is my.cnf on prod:

[mysqld]
set-variable=local-infile=0
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

max_connections = 500
max_user_connections = 150

key_buffer = 2048M

query_cache_limit=4M
query_cache_size=64M
table_cache=2048
tmp_table_size=64M
max_heap_table_size = 256M

# users buffers
sort_buffer_size=2M
read_buffer_size=2M
read_rnd_buffer_size=1M

max_allowed_packet=16M

thread_cache=16
thread_concurrency=8
thread_cache_size=128
innodb_buffer_pool_size = 128M
myisam_sort_buffer_size = 128M

wait_timeout = 240
interactive_timeout = 240
max_allowed_packet=32M

[mysql.server]
user=mysql
basedir=/var/lib

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
+1  A: 

Check here. It looks very similar to your issue.

a1ex07
You, sir, are a gentleman and a scholar. This is exactly what was wrong, and the suggested fix worked a charm. Thank you.
WaveyDavey