472,119 Members | 1,516 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,119 software developers and data experts.

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 24556
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,658 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,658 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,658 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,658 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,658 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,658 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,658 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,658 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,658 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,658 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,658 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
reply views Thread by leo001 | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.