MySQL开启Federated引擎以及使用示例

简述

Federated引擎可以让我们访问远程MySQL数据库中的数据。查询本地Federated表时,自动从远程数据库表中提取数据。本地只存储表的定义,表的数据还是存储在远程数据库中。

MySQL Federated是MySQL数据库中的一种特殊的存储引擎,它允许用户在不同的MySQL服务器之间共享数据。这种存储引擎的原理是将数据存储在远程MySQL服务器上,然后通过本地MySQL服务器来访问这些数据。
这种方法可以使用户在不同的MySQL服务器之间共享数据,而不需要复制数据或者进行数据同步。

MySQL Federated存储引擎的
优点:
(1)可以在不同的MySQL服务器之间共享数据,而不需要复制或进行数据同步。减少数据冗余,提高数据的一致性和可靠性。
(2)可以提高系统的可扩展性和可维护性,无需复杂的数据同步和管理。

缺点:
(1)远程MySQL服务器出现故障或网络故障,那本地MySQL服务器将无法访问远程MySQL服务器上的数据。
(2)MySQL Federated存储引擎的性能可能受到网络延迟和带宽限制的影响。

原理和Oracle中的dblink类似。

默认情况下,MySQL并未启用Federated引擎,如果要启用,必须使用federated配置启动。

sqlserver跨数据库查询mysql数据

简介

我们知道同种类型数据库,本地数据库要想和远程数据库建立连接:

  • oracle使用dblink
  • sqlserver使用链接服务器
  • mysql使用Federated引擎

大型项目尤其是高并发项目中,不推荐直接在本地数据库与远程数据库之间建立连接。但小型项目中,某些场景下使用数据库之间的连接,反而能让我们更方便的进行系统集成与数据查询。所以凡事无绝对,不同的应用场景考虑不同的技术。

本文我们主要讲述的是不同类型数据库跨库查询数据,如何在sqlserver中直接查询mysql数据。

不同类型数据库之间不能直接建立连接,在这里我们使用mysql-connector-odbc通过ODBC数据源来实现sqlserver跨数据库数据查询mysql数据。

环境说明:
sqlserver版本: Microsoft SQL Server 2008 R2 (RTM)
mysql版本: 5.7.31
mysql-connector-odbc-8.0.28-winx64.msi

Nginx替换https证书步骤

简介

Nginx替换https证书步骤:
1、上传并替换证书文件;
2、nginx -s reload加载新证书;
3、浏览器查看确认证书是否生效;

详细说明

1、上传并替换证书文件

从nginx.conf或其子配置中查看ssl证书配置,例如:

ssl_certificate      /opt/certs/xxx.com_bundle.crt;
ssl_certificate_key  /opt/certs/xxx.com.key;

Axios如何实现同步请求(async与await)

Axios介绍

Axios是一个基于promise的网络请求库,可以用在浏览器和 node.js中。

Axios本质上也是对原生XHR的封装,只不过它是Promise的实现版本。

主要特点:
从浏览器创建 XMLHttpRequests
从 node.js 创建 http 请求
支持 Promise API
拦截请求和响应
转换请求和响应数据
取消请求
自动转换JSON数据
客户端支持防御XSRF

在axios中,所有的请求都是异步发送的。所以单独用axios是实现不了同步的,需要结合async与await关键字使用。