469,267 Members | 1,039 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,267 developers. It's quick & easy.

Connect two different database server using PHP

Hi everyone,

I want to connect two different database server using php/mysql.
Suppose i have some dat on www.xyz.com and i want to select that data on www.abc.com
How do i integrate two different database server please some body tell me...

Thanks in advance
Jul 1 '09 #1
24 24177
1,584 Expert 1GB
do you know how to connect to one database? if not look online for PHP tutorial and read the manual at php.org

I don't even know what database you're using, if MySQL then php has native functions for that.

If you know how to connect to one, then you can connect to multiple.

Jul 1 '09 #2
of course i know how to connect one database but i am facing the problem like if i connect two different databse on local server it works fike and when i upload that file to remote server its not working and i am using PHP 5.0/MYSQL .
Jul 2 '09 #3
8,651 Expert Mod 8TB
to work with a remote server you usually need permissions to access it (many ISP servers allow only localhost access). otherwise you need to make sure to always pass the correct resource link. (if you're using PDO you might get away with 2 DB objects, though)
Jul 2 '09 #4
i am connecting two database server with this code.

Expand|Select|Wrap|Line Numbers
  1. For first server
  2. <?php
  3. $hostname = "hostname";
  4. $username = "username"; 
  5. $password = "password";  
  6. $con = mysql_connect($hostname,$username,$password) or die("Database not connected");
  7. mysql_select_db("database");  
  8. ?>
  10. For second server
  11. <?php
  12. $hostname = "hostname1";
  13. $username = "username1"; 
  14. $password = "password1";  
  15. $con = mysql_connect($hostname,$username,$password) or die("Database not connected");
  16. mysql_select_db("database1");  
  17. ?>
Jul 2 '09 #5
8,651 Expert Mod 8TB
this code will probably get you in trouble if you want to use both connections in the same script.

- the second connection will overwrite the first one (you need to use different variable names)
- if you're using more than one connection, you must (in a logical sense) pass the connection resource to every mysql_* function.

my personal recommendation: use PDO. it boils down to using 2 different DB objects, which is IMO easier to track and maintain (beside the various other advantages that come with PDO (Exceptions, Prepared Statements, advanced data fetching, …)
Jul 2 '09 #6
Sorry for prev reply actually i had not notice that i am using same variable name in prev reply

my actual code is:

Expand|Select|Wrap|Line Numbers
  1. <?php
  2. $r_hostname = "hostname1";
  3. $r_username = "username1";
  4. $r_password = "pass1";
  5. $link = mysql_connect($r_hostname,$r_username,$r_password);
  6. $db = mysql_select_db("db_name1",$link);
  7. ?>
  8. <?php
  9. $hostname = "hostname2";
  10. $username = "username2"; 
  11. $password = "pass2";  
  12. $con = mysql_connect($hostname,$username,$password);
  13. $db1 = mysql_select_db("db_name2",$con);  
  14. if ($con)
  15.  {
  16.     if ($db1) 
  17.     {
  18.         echo "connected and selected ok";
  19.     }
  20.     else
  21.       {
  22.         echo "connected and selected failed";
  23.     }
  24. else
  25. {
  26. echo "failed to connect to server";
  27. }
  28. ?>
Jul 2 '09 #7
8,651 Expert Mod 8TB
does it work now?

you might think over, how to verify the server connections, currently you completely neglect server1 errors.

line 13 would fail if the server connection (line 12) failed.
Jul 2 '09 #8
No its not working...

And server1 is that server where my registration page resides and i want to insert all data into database which is on server2 .
But i am not able to do this...

Thanks for your kind reply
Jul 2 '09 #9
8,651 Expert Mod 8TB
any error messages? can you confirm both connections? have you access permission on server2?
Jul 2 '09 #10
I am getting this error

Warning: mysql_connect() [function.mysql-connect]: Unknown MySQL server host 'mysql50-30.wcl' (11001).

and for permission i have to check but how will i check that server2 has given me permission to access database. If not then how will i enable the access...
Jul 2 '09 #11
8,651 Expert Mod 8TB
that's a strange host name, usually the host name is identical to the server name.

as for the permissions, ask the Administrator of server2.
Jul 2 '09 #12
If i am using only on single server this name as hostname ''mysql50-30.wcl'' then its working fine i can do all the think like select, delete and insert command. on this server but its not working when i am trying to connect on another server.
Jul 2 '09 #13
8,651 Expert Mod 8TB
what do you get for "mysql.max_links" in php.ini (see phpinfo() in the MySQL section)?
Jul 2 '09 #14
its showing unlimited
Jul 2 '09 #15
8,651 Expert Mod 8TB
hm, as expected…

could you PM (private messaging) me both host names, so that I can try if I get the same errors?
Jul 2 '09 #16
send me ur email id or how can i send PM via bytes
Jul 2 '09 #17
8,651 Expert Mod 8TB
go to "User Control Panel" (click on your username just below the Bytes logo). in the left side menu there is the "Private Messages" group, click on "Send New Message". use "Dormilich" (w/o the quotes) as recipient. type message. click on the "Submit Message" button when you’re done. ;)

alternatively, click on my username, this brings you to my public profile. go to the "Contact Info" tab, click on "Send a Private Message …". proceed as above.
Jul 2 '09 #18
i have sent you the message with all the details...

Jul 2 '09 #19
8,651 Expert Mod 8TB
1) can't connect to second server (hostname (chessimmigration.com) unknown) but it should work for you since it's your localhost

2) can find first server, but can't establish connection
Expand|Select|Wrap|Line Numbers
  1. $c1 = mysql_connect('chessglobalproperties.com', $user, $pass);
  3. Warning: mysql_connect(): Lost connection to MySQL server at 'reading initial communication packet', system error: 61
after some research I found out that "system error: 61" means that you can only connect this particular DB with "localhost" as host name (i.e. not from outside). you need to alter the mysql conf file to get this working.

note: to pass the socket you need to use MySQLi
Jul 2 '09 #20
thank you very much for your co-operation...

i will do the same according to your reply...
Jul 3 '09 #21
hi ... i have same problem.. i have two databases from two different server and i want to connect in one php page but its giving me error like...
Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'www.domain2.com'..
Please help...
Thanks in advance..
Mar 23 '10 #22
8,651 Expert Mod 8TB
the second server must allow remote connection …
Mar 23 '10 #23
i have the problem in connecting two different database server, actually i want to take out data from MySQl table and want to istore it into MsSQl databse on the same page, i tried using mysql_connect() and mssql_conect() to connect with databases
bum i m getting 500 error that is internal server error plz help me ..!! thnaks in advanced
May 11 '13 #24
8,651 Expert Mod 8TB
first make sure that both servers are properly installed (should be the least problem), then make sure PHP has both the mysql and mssql extensions installed. if that is also given, ask your host’s support.
May 11 '13 #25

Post your reply

Sign in to post your reply or Sign up for a free account.

Similar topics

1 post views Thread by beck4353 | last post: by
4 posts views Thread by Wonderinguy | last post: by
11 posts views Thread by Marcus | last post: by
3 posts views Thread by Fabian Knopf | last post: by
5 posts views Thread by Daniel Bass | last post: by
4 posts views Thread by traceable1 | last post: by
1 post views Thread by MSK | last post: by
1 post views Thread by CARIGAR | last post: by
reply views Thread by zhoujie | last post: by
reply views Thread by suresh191 | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.