2024年8月26日

流类型别名

当仅以文字形式书写时,Flow 很快就会变得非常冗长。将重复的类型声明为类型别名通常很有用。 声明类型别名 假设你正在编写函数来操作待办事项列表: // Add a new todo item to `todos` and return the new item. function addTodo( todos: Array<{id: number, name: string, completed: boolean}>, name: string, ): {id: number, name: string, completed: boolean} { // Implementation omitted for brevity. } // Get a todo item from `todos` by `id`. function getTodo( todos: Array<{id: number, na…
2024年8月26日

Flow 中的对象作为地图

尽管Map类型已经出现,但普通对象仍然是表示地图的一种非常常见的方式。为了支持这种模式,Flow 提供了一种非常灵活的方式来表达这一点。 对象映射的用处 假设你想编写一个函数来计算一份购物清单的总价。调用它的方式如下: // This would return 9.5 (4 + 3 + 2.5). getTotalCost({ eggs: 4, fruitSnacks: 3, toothpaste: 2.5, }); 列表可以包含任意数量的项目,因此您无法明确将每个项目声明为属性。此外,您需要确保它只接受数字,因此: getTotalCost({ eggs: 4, toothpaste: 2.5, milk: 'Too much', }); …会出现类型错误。 将类型声明为对象映射 就像 Flow 中的很多东西一样,它非常简单。只需在括号中声明一个类型键并赋予它类型: type Gro…
2024年8月26日

如何使用 Postfix、Dovecot、MySQL 和 SpamAssassin 配置邮件服务器

介绍 在本教程中,我们将在 Ubuntu 12.04 上使用 Postfix、Dovecot、MySQL 和 SpamAssassin 配置邮件服务器。 按照本教程,您将能够添加虚拟域、用户和别名。此外,您的虚拟服务器将免受垃圾邮件中心的侵害。 先决条件 在设置邮件服务器之前,您的 VPS 必须具备以下条件: * 域名正在转发到您的服务器(设置域名) * 安装并配置 MySQL(设置 mysql) * 具有 root 权限的用户(设置新用户- 省略步骤 5) * 配置并识别您的 FQDN(设置 FQDN) 可选:SSL 证书(设置免费签名的 SSL 证书) 可选(以 root 用户身份登录) 以 root 用户身份安装软件包很有用,因为您拥有所有权限。 sudo -i 输入您的用户密码。输入成功后,您将看到该$符号变为#。 步骤 1:安装软件包 apt-get install postfix postfi…
2024年8月26日

如何使用 MySQL 查询分析

介绍 在尝试分析数据库驱动应用程序的整体性能时,MySQL 查询分析是一种有用的技术。在开发中型或大型应用程序时,大型代码库中往往会分布着数百个查询,并且每秒可能会对数据库运行大量查询。如果没有某种查询分析技术,就很难确定瓶颈和应用程序速度变慢的位置和原因。本文将使用 MySQL 服务器内置的工具演示一些有用的查询分析技术。 什么是 MySQL 慢查询日志? MySQL 慢查询日志是 MySQL 发送慢速、可能有问题的查询的日志。此日志记录功能随 MySQL 一起提供,但默认情况下处于关闭状态。记录哪些查询由可自定义的服务器变量决定,这些变量允许根据应用程序的性能要求进行查询分析。通常,记录的查询是执行时间超过指定时间的查询或未正确命中索引的查询。 设置分析变量 设置 MySQL 慢查询日志的主要服务器变量是: slow_query_log G sl…
2024年8月26日

如何设置远程数据库以使用 MySQL 优化站点性能

介绍 随着应用程序或网站的发展,您可能会发现当前的设置已经无法满足您的需要。如果您当前在同一个 VPS 上托管 Web 服务器和数据库后端,那么将这两个功能分开可能是一个好主意,这样每个功能都可以在自己的机器上运行和发展。 在本指南中,我们将讨论如何配置您的 Web 服务器可以连接到的远程数据库服务器以获取动态内容。我们将使用 WordPress 作为示例,以便我们有一些可以使用的东西。我们将在我们的 Web 服务器上配置 Nginx,然后将其连接到远程计算机上的 MySQL 数据库。我们将在 Ubuntu 12.04 VPS 实例上执行所有这些操作以供演示。 在数据库服务器上安装 MySQL 首先,我们将配置一个 VPS 实例作为 MySQL 服务器。当您的单机配置达到上限时,将数据存储在单独的计算机上是一种优雅扩展的好方法。它还提供了负载平衡和以后进一步扩展…
2024年8月26日

如何使用 Mytop 监控 MySQL 性能

介绍 Mytop 是一个开源的命令行工具,用于监控 MySQL 性能。它的灵感来自 Linux 系统监控工具 top,外观和感觉与之相似。Mytop 连接到 MySQL 服务器并定期运行show processlist和show global status命令。然后,它会以有用的格式汇总信息。使用 mytop,我们可以(实时)监控 MySQL 线程、查询和正常运行时间,以及查看哪个用户在哪个数据库上运行查询、哪些是慢速查询等等。所有这些信息都可用于优化 MySQL 服务器性能。 在本教程中,我们将讨论如何安装、配置和使用 mytop。 先决条件 在开始本教程之前,您应该具备以下条件: CentOS 7 64 位 Droplet(也适用于 CentOS 6) 具有 sudo 权限的非 root 用户。要设置此类型的用户,请按照CentOS 7 的初始服务器设置教程进行操作。所有命令都…
2024年8月26日

如何使用 MySQL Workbench 远程连接 MySQL 服务器

介绍 您的数据库服务器包含大量重要数据的表。在本地计算机上以图形方式查询这些数据是与数据库交互的最简单方法。但远程连接到数据库服务器通常需要配置 MySQL 以监听每个接口、3306使用防火墙限制对端口的访问以及配置用户和主机权限以进行身份​​验证。而允许直接连接到 MySQL 可能会带来安全问题。 使用适用于 Windows 的HeidiSQL 、适用于 macOS 的Sequel Pro或跨平台MySQL Workbench等工具,您可以通过 SSH 安全地连接到数据库,从而绕过那些繁琐且可能不安全的步骤。本简短教程将向您展示如何使用 MySQL Workbench 连接到远程数据库。 先决条件 要完成本教程,您需要: 运行 MySQL 的服务器,可通过 SSH 访问。例如,您可以按照教程如何在 Ubuntu 14.04 上安装 MySQL快速启动并运行。 MySQ…
2024年8月26日

如何在 MySQL 中导入和导出数据库以及重置 root 密码

如何导入和导出数据库 出口 要导出数据库,请打开终端,确保您未登录 MySQL,然后输入, mysqldump -u [username] -p [database name] > [database name].sql 您在命令中选择的数据库现在将被导出到您的 droplet。 进口 要导入数据库,首先在 MySQL shell 中创建一个新的空白数据库作为数据的目标。 CREATE DATABASE newdatabase; 然后退出 MySQL shell 并在命令行中输入以下内容: mysql -u [username] -p newdatabase < [database name].sql 这样,您选择的数据库就被导入到 MySQL 中的目标数据库中。 如何重置 Root 密码 首次安装 MySQL 时,必须设置 root 密码。但是,如果您在任何时候忘记了密码,仍然可以恢复…
2024年8月26日

如何在 Linux VPS 中保护 MySQL 和 MariaDB 数据库

介绍 Linux 和类 Unix 系统上有许多可用的 SQL 数据库语言实现。MySQL 和 MariaDB 是在服务器环境中部署关系数据库的两种流行选择。 但是,与大多数软件一样,如果配置不正确,这些工具可能会成为安全隐患。本教程将指导您完成一些基本步骤,以保护您的 MariaDB 或 MySQL 数据库,并确保它们不会成为您 VPS 的敞开大门。 为了简单起见,我们将使用 Ubuntu 12.04 VPS 实例上的 MySQL 服务器。但是,这些技术可以应用于其他 Linux 发行版,也可以与 MariaDB 一起使用。 初始设置 MySQL 让您有机会在安装过程中迈出安全的第一步。它将要求您设置 root 密码。 sudo apt-get install mysql-server ?????????????????????????? Configuring mysql-server…
2024年8月26日

如何在云服务器上创建和管理 MySQL 和 MariaDB 数据库

什么是 MySQL 和 MariaDB? MySQL 和 MariaDB 是关系数据库管理系统。这些工具可以在您的 VPS 服务器上使用,以管理来自许多不同程序的数据。两者都实现了 SQL 查询语言的形式,并且都可以在云服务器上使用。 本指南将介绍如何使用这些工具创建数据库。这是在 SQL 环境中管理数据所需的基本技能。我们还将介绍数据库管理的其他几个方面。 出于本指南的目的,我们将在小型 droplet 上使用 Ubuntu 12.04 服务器。但是,所有内容都应直接转换到其他发行版。 如何在 MySQL 和 MariaDB 中创建数据库 首先,使用以下命令登录 MySQL 或 MariaDB: mysql -u root -p 输入您在安装期间设置的管理员密码。您将获得 MySQL/MariaDB 提示。 我们现在可以通过输入以下命令来创建数据库: CREATE DATABASE ne…