- MySQL 8 for Big Data
- Shabbir Challawala Jaydip Lakhatariya Chintan Mehta Kandarp Patel
- 191字
- 2021-08-20 10:06:11
Federated
The FEDERATED storage engine allows you to create a single database on multiple physical servers. It opens a client connection to another server and executes queries against a table there, retrieving and sending rows as needed. It was originally marketed as a competitive feature that supported many enterprise-grade proprietary database servers, such as Microsoft SQL Server and Oracle, but that was always a stretch, to say the least. Although it seemed to enable a lot of flexibility and neat tricks, it has proven to be a source of many problems and is disabled by default. However, we can enable it by starting the MySQL Server binary with --federated option.
Let's create a FEDERATED table.
CREATE TABLE user_federated (
id INT(20) NOT NULL AUTO_INCREMENT,
name VARCHAR(32) NOT NULL DEFAULT '',
PRIMARY KEY (id),
INDEX name (name))
ENGINE=FEDERATED DEFAULT CHARSET=latin1
CONNECTION='mysql://remote_user:[password]@remote_host:port/federated/table';
The connection field contains information mentioned as follows for your ready reference:
- remote_user: A username of remote MySQL Server
- password: A password of remote MySQL Server
- remote_host: A hostname of the remote server
- port: Port number of the remote server
- federated: Remote server database name
- table: Remote server database table name