当前位置:首页 > 数码 > MySQL-实现跨数据库访问的完整教程-跨服务器数据访问指南 (mysql-bin文件可以删除吗)

MySQL-实现跨数据库访问的完整教程-跨服务器数据访问指南 (mysql-bin文件可以删除吗)

admin7个月前 (05-04)数码18

在使用 MySQL 数据库时,用户经常会遇到需要访问其他服务器上的数据的场景。本文将介绍如何使用 FEDERATED 存储引擎实现跨服务器数据访问,并通过具体案例进行展示。

如何实现

在 MySQL 数据库中,可以通过 FEDERATED 存储引擎实现跨服务器数据访问。

启用 FEDERATED 存储引擎

要启用 FEDERATED 存储引擎,需要在MySQL 配置文件中添加以下配置:

[mysqld]
  federated
  

添加配置后,重启 MySQL 服务即可启用 FEDERATED 存储引擎。

具体案例

假设服务器 A 实例中的 testdb1 库里有一张表 tb1,现在想在服务器 B 的 testdb2 中直接访问 testdb1 中的 tb1 表的数据。

实现步骤

1. 在服务器 A 中创建表

mysql> create table testdb1.tb1 (
  >     id int primary key,
  >     c1 varchar(20)
  > );
  

2. 在服务器 A 中授予用户访问权限

mysql> grant all on testdb1. to t_user identified by 'Test2023.com';
  

3. 在服务器 B 中创建 FEDERATED 存储引擎表

mysql> create table testdb2.tb1 (
  >     id int,
  >     c1 varchar(20)
  > ) engine=federated default connection='mysql://t_user:Test2023.com@serverA.example.com/testdb1.tb1';
  

4. 测试数据访问

在服务器 B 上,可以使用以下语句查询 testdb2_tb1 表中的数据:
mysql> select  from testdb2_tb1;
  

5. 数据操作

可以在服务器 B 上对 testdb2_tb1 表进行数据操作,这些操作会同步到服务器 A 的 testdb1.tb1 表中。例如:
mysql> insert into testdb2_tb1 values (5, 'cc'), (6, 'ty');
  mysql> delete from testdb2_tb1 where id=1;
  mysql> update testdb2_tb1 set c1='bb' where id=2;
  

6. 限制

需要注意的是,FEDERATED 存储引擎有一些限制: 不支持所有 MySQL 特性,例如索引和外键。 数据更新可能会导致性能下降。 可能存在安全风险,因为需要在不同服务器之间建立连接。

如何使用mysql workbench从外网访问内网mysql服务器

一台电脑上安装了Workbench,现需要访问另一台ubuntu服务器上的MySQL数据库,但mysql默认是不允许访问的,考虑到安全性问题,也不适合使用root用户来访问mysql。 这时我们就需要开放mysql服务器并创建新的用户来访问mysql。 1,开放mysqlmysql的配置文件在/etc/mysql/文件内,里面有一行bind-address = 127.0.0.1表示只允许本地访问,将这行注释即可2,创建新的mysql用户(1)首先在本地进入mysql数据库的mysql库内(2)创建用户:GRANT ALL ON *.* to user@IP IDENTIFIED BY password; 其中user表示需要创建用户的名字;IP表示哪台客户端想要访问mysql数据库;password表示密码;并赋予所有的权限。 (3)FLUSH PRIVILEGES;刷新mysql的系统权限相关表,否则会出现拒绝访问。 重启数据库也能达到这样的效果

实现跨数据库访问的完整教程

如何在一台电脑上访问另一台电脑上的SQL数据库

工具/材料:Management Studio。

1、首先在桌面上,点击“Management Studio”图标。

2、然后在该界面中,另一台电脑的IP地址,登录名和登录密码。

3、之后在该界面中,点击“连接”按钮。

4、最后在该界面中,成功连接,显示另一台电脑上的SQL数据库。

免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。

标签: MySQL

“MySQL-实现跨数据库访问的完整教程-跨服务器数据访问指南 (mysql-bin文件可以删除吗)” 的相关文章

实用性极强的-MySQL-查询优化策略 (实用性极强的app)

实用性极强的-MySQL-查询优化策略 (实用性极强的app)

在程序上线运行一段时间后,一旦数据量上去了,或多或少会感觉到系统出现延迟、卡顿等现象,出现这种问题,就需要程序员或架构师进行系统调优工作了。其中,大量的实践经验表明,调优的手段尽管有很多,但涉及到...

主从复制原理简介-MySQL (主从复制原理mysql)

主从复制原理简介-MySQL (主从复制原理mysql)

主从复制(Master-SlaveReplication)是一种数据复制技术,用于在多个数据库主机之间的数据同步。在主从复制架构中,一个主机被设置为主主机(Master),充任数据源,其余主机被设...

全面指南-如何解决-MySQL-主从延时问题 (全面指导)

全面指南-如何解决-MySQL-主从延时问题 (全面指导)

一、什么是主从延时? 主从延时,是指从数据库从主数据库复制数据时产生的时间差。它会导致从库中的数据与主库不一致。 二、为什么会主从延时? 1. 主从复制原理 MySQL的...

核心模块-深入探索数据库引擎-MySQL-揭秘 (核心模块英文)

核心模块-深入探索数据库引擎-MySQL-揭秘 (核心模块英文)

简介 Savepoint 是 MySQL 中的一种机制,允许在事务中创建标记点,以便在事务失败时回滚到该标记点。Savepoint 的原理是将事务的当前状态存储在各种数据结构中,包括服务器层、b...

使用-数据库并自动发送备份文件到指定邮箱-K8s-定期备份-MySQL (使用数据库的命令)

使用-数据库并自动发送备份文件到指定邮箱-K8s-定期备份-MySQL (使用数据库的命令)

简介 本文档描述了一个使用脚本来监控服务器高占用率进程并通过电子邮件发送警报的项目。本文还探讨了使用相同机制备份数据库的可能性。 技术 Python psuti...

обеспечение-и-данных-MySQL锁机制-предотвращение-конфликтов-согласованности (翻译)

обеспечение-и-данных-MySQL锁机制-предотвращение-конфликтов-согласованности (翻译)

锁机制是一种通过对数据进行加锁来防止数据冲突和不一致的技术。MySQL 采用了两种类型的锁:共享锁和排他锁,以实现并发访问数据的同时保证数据的一致性。 共享锁 (SharedLock)...

揭秘MySQL中Varchar和Int的隐式转换 (揭秘国安部点名的间谍机构)

揭秘MySQL中Varchar和Int的隐式转换 (揭秘国安部点名的间谍机构)

前言 在一次例行测试中,我们遇到了一个奇特的现象。一条查询库存数量的SQL语句,居然返回了0条记录。当我们手工执行SQL时,却查询到了一条记录。调查发现,原因在于MySQL的优化器在判断数据类型...

揭开其背后的神奇世界-深入探寻-索引的底层逻辑-MySQL (揭开其背后的真相)

揭开其背后的神奇世界-深入探寻-索引的底层逻辑-MySQL (揭开其背后的真相)

什么是索引? 索引是数据库系统中一种特殊的数据结构,用于快速查找数据。索引以某种方式引用(指向)数据,允许在索引上实现高级查找算法,从而提高查询速度。 索引的种类 最常见的索引类型有:...