Solved

Setting up FEDERATED Table recieve MySQL Database Error: Unable to connect to foreign data source:

Posted on 2008-06-12
4
1,885 Views
Last Modified: 2012-05-05
Setting up a FEDERATED storage ENGINE to link a masted and remote table
I get the following error MySQL Database Error: Unable to connect to foreign data source: Unknown MySQL server host
when inserting into master, both master and remote then error out and can not drop table
## Create TABLE on Master
 
CREATE TABLE `events` (
  `id` int(11) NOT NULL,
  `event_type` varchar(255) DEFAULT NULL,
  `name` 
varchar(255) DEFAULT NULL,
  `description` text,
  `created_by_id` int(11) DEFAULT NULL,
  
`updated_by_id` int(11) DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime 
DEFAULT NULL,
  `vendor_id` int(11) DEFAULT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT 
CHARSET=latin1;
 
 
## Create TABLE on Remote
 
CREATE TABLE `events` (
  `id` int(11) NOT NULL,
  `event_type` varchar(255) DEFAULT NULL,
  `name` 
varchar(255) DEFAULT NULL,
  `description` text,
  `created_by_id` int(11) DEFAULT NULL,
  
`updated_by_id` int(11) DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime 
DEFAULT NULL,
  `vendor_id` int(11) DEFAULT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT 
CHARSET=latin1;
 
 
## Create Federated in Master
 
CREATE TABLE `events_F` (
  `id` int(11) NOT NULL,
  `event_type` varchar(255) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL,
  `description` text,
  `created_by_id` int(11) DEFAULT NULL,
  `updated_by_id` int(11) DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  `vendor_id` int(11) DEFAULT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=FEDERATED DEFAULT CHARSET=latin1 CONNECTION='mysql://<user>:<password>@<host>:3306/Edge/events'
Commit;
 
## Create Trigger on Master
 
CREATE TRIGGER `Core`.`Events_insert` After INSERT
    ON Core.events FOR EACH ROW
BEGIN
insert into Core.events_F values
(
NEW.id,
NEW.event_type,
NEW.name,
NEW.description,
NEW.created_by_id,
NEW.updated_by_id, 
NEW.created_at,
NEW.updated_at,
NEW.vendor_id);
END;
Commit;

Open in new window

0
Comment
Question by:IcueTV
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
4 Comments
 
LVL 25

Accepted Solution

by:
Tomas Helgi Johannsson earned 500 total points
ID: 21779851
   Hi!

This can be due to several reasons
1) remote hostname is unknown to the calling host. -> Solved by altering dns records or adding the IP and hostname to hosts file.
2) Firewall is blocking the caller host to connect to the remote host.
3) Security in mysql on  the remote host does not allow the calling host to connect.

http://dev.mysql.com/doc/refman/5.0/en/federated-use.html
http://dev.mysql.com/doc/refman/5.0/en/federated-limitations.html
http://dev.mysql.com/doc/refman/5.0/en/privilege-system.html
http://dev.mysql.com/doc/refman/5.0/en/user-account-management.html
http://dev.mysql.com/doc/refman/5.0/en/server-administration.html

Regards,
    Tomas Helgi
0
 
LVL 25

Expert Comment

by:Tomas Helgi Johannsson
ID: 21873764
Did my earlier comment help you ?

Regards,
    Tomas Helgi
0

Featured Post

How our DevOps Teams Maximize Uptime

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us. Read the use case whitepaper.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I have been using r1soft Continuous Data Protection (http://www.r1soft.com/linux-cdp/) for many years now with the mySQL Addon and wanted to share a trick I have used several times. For those of us that don't have the luxury of using all transact…
Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
This video shows how to use Hyena, from SystemTools Software, to update 100 user accounts from an external text file. View in 1080p for best video quality.

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question