如何使用TablePlus管理ServBay中的数据库
ServBay 是一个专为 macOS 设计的本地 Web 开发环境,集成了多种编程语言、Web 服务器和数据库系统,为开发者提供了一站式的开发平台。为了更方便地管理 ServBay 中集成的数据库,如 MySQL/MariaDB, PostgreSQL, SQLite, Redis, MongoDB 等,使用一款功能强大的第三方数据库管理工具是十分高效的选择。TablePlus 是一款现代、直观且支持多种数据库的客户端工具,非常适合与 ServBay 配合使用。
本文将详细指导您如何在 macOS 上使用 TablePlus 连接和管理 ServBay 中提供的各种数据库。
什么是TablePlus?
TablePlus 是一款功能强大且用户友好的数据库管理 GUI 工具。它支持广泛的数据库类型,包括但不限于:
- 关系型数据库:MySQL, MariaDB, PostgreSQL, SQLite, SQL Server
- NoSQL 数据库:Redis, MongoDB
- 其他:Cassandra, Oracle 等
TablePlus 提供了一系列特性,旨在简化数据库开发、管理和维护工作:
- 直观的界面: 简洁清晰的用户界面,易于导航和操作。
- 快速响应: 专为性能优化设计,处理大型数据集也能保持流畅。
- 强大的查询编辑器: 支持语法高亮、自动补全和多标签页查询。
- 数据编辑与查看: 方便快捷地浏览、插入、更新和删除数据。
- 结构管理: 可视化管理表结构、索引、视图等。
- 安全连接: 支持 SSL/TLS 加密连接。
对于使用 ServBay 进行本地开发的开发者来说,TablePlus 可以极大地提升数据库操作效率。
连接ServBay中的数据库到TablePlus
ServBay 默认在本地启动并运行多个数据库服务。您可以在 ServBay 应用界面的 软件包 (Packages) 标签页中查看已安装和正在运行的数据库服务状态。连接这些数据库到 TablePlus 需要获取正确的连接参数,这些参数可以在 ServBay 的 数据库 (Databases) 标签页中找到。
以下是连接 ServBay 中不同类型数据库的具体步骤和参数。
连接 MariaDB 或 MySQL
ServBay 默认安装并运行 MariaDB(与 MySQL 高度兼容)。
- 下载并安装TablePlus:如果尚未安装,请从 TablePlus 官方网站 下载并安装适用于 macOS 的 TablePlus 客户端。
- 打开TablePlus并创建新连接:
- 启动 TablePlus。
- 点击左上角的 "+" 图标或选择菜单
File
->New
->Connection...
。 - 在弹出的窗口中,选择数据库类型为
MariaDB
或MySQL
。
- 配置连接信息:
- Name: 给您的连接起一个易于识别的名称,例如
ServBay MariaDB
。 - Host:
127.0.0.1
(本地连接) - Port:
3306
(MariaDB/MySQL 的默认端口) - User: 在 ServBay 的 数据库 (Databases) 标签页中查找 MariaDB/MySQL 的 root 用户名(通常是
root
)。 - Password: 在 ServBay 的 数据库 (Databases) 标签页中查找 MariaDB/MySQL 的 root 密码。
- Database: 可以留空,连接后选择数据库;或输入您想要连接的特定数据库名称。
- Alternative: 您也可以选择使用 Socket 连接方式,这通常比 TCP/IP 连接稍快且更直接。
- 勾选 Use socket file。
- Socket Path:
/Applications/ServBay/tmp/mysql.sock
(这是 ServBay MariaDB/MySQL 默认的 socket 文件路径)。 - 使用 Socket 连接时,
Host
和Port
参数将被忽略。
- Name: 给您的连接起一个易于识别的名称,例如
- 测试连接并保存:
- 点击右下角的
Test
按钮,验证连接信息是否正确。如果测试成功,说明参数无误。 - 点击
Connect
按钮建立连接。您也可以先点击Save
将连接配置保存起来,方便下次使用。
- 点击右下角的
连接 PostgreSQL
ServBay 也支持运行 PostgreSQL 数据库。
- 打开TablePlus并创建新连接:
- 启动 TablePlus。
- 点击 "+" 图标或选择菜单
File
->New
->Connection...
。 - 选择数据库类型为
PostgreSQL
。
- 配置连接信息:
- Name: 例如
ServBay PostgreSQL
。 - Host:
127.0.0.1
- Port:
5432
(PostgreSQL 的默认端口) - User: 在 ServBay 的 数据库 (Databases) 标签页中查找 PostgreSQL 的默认用户名(通常是
servbay
)。 - Password: 在 ServBay 的 数据库 (Databases) 标签页中查找 PostgreSQL 的默认密码。
- Database: 连接 PostgreSQL 时通常需要指定一个初始数据库,可以使用默认的
postgres
数据库,或者您在 ServBay 中创建的其他数据库。 - Alternative: 您也可以选择使用 Socket 连接方式。
- 勾选 Use socket file。
- Socket Path:
/Applications/ServBay/tmp/.s.PGSQL.5432
(这是 ServBay PostgreSQL 默认的 socket 文件路径)。 - 使用 Socket 连接时,
Host
和Port
参数将被忽略。
- Name: 例如
- 测试连接并保存:
- 点击
Test
按钮验证连接。 - 点击
Connect
或Save
。
- 点击
连接 SQLite 3
SQLite 数据库是一个无服务器、自给自足的数据库引擎,数据存储在一个文件中。ServBay 不“运行”一个 SQLite 服务器进程,但您的应用程序可以使用 ServBay 提供的 PHP PDO SQLite 或 Python sqlite3
模块等来访问 SQLite 文件。TablePlus 可以直接连接到这个数据库文件。
- 打开TablePlus并创建新连接:
- 启动 TablePlus。
- 点击 "+" 图标或选择菜单
File
->New
->Connection...
。 - 选择数据库类型为
SQLite
。
- 配置连接信息:
- Name: 例如
ServBay SQLite Project
。 - Database File: 点击右侧的文件夹图标,浏览并选择您的 SQLite 数据库文件 (
.sqlite
,.db
,.sqlite3
等扩展名)。建议将您的项目相关的数据库文件存放在项目目录下,或者 ServBay 建议的数据库目录/Applications/ServBay/db/sqlite
下,以便管理。
- Name: 例如
- 测试连接并保存:
- 点击
Test
(如果文件存在且可读)。 - 点击
Connect
或Save
。
- 点击
连接 Redis
Redis 是一个高性能的键值存储数据库。ServBay 可以安装并运行 Redis 服务。
- 打开TablePlus并创建新连接:
- 启动 TablePlus。
- 点击 "+" 图标或选择菜单
File
->New
->Connection...
。 - 选择数据库类型为
Redis
。
- 配置连接信息:
- Name: 例如
ServBay Redis
。 - Host:
127.0.0.1
- Port:
6379
(Redis 的默认端口) - Password: 如果您为 ServBay 中的 Redis 配置了密码,请在此输入。默认安装的 ServBay Redis 通常没有设置密码,可以留空。
- Name: 例如
- 测试连接并保存:
- 点击
Test
按钮验证连接。 - 点击
Connect
或Save
。
- 点击
连接 MongoDB
ServBay 支持安装和运行 MongoDB 数据库。
- 打开TablePlus并创建新连接:
- 启动 TablePlus。
- 点击 "+" 图标或选择菜单
File
->New
->Connection...
。 - 选择数据库类型为
MongoDB
。
- 配置连接信息:
- Name: 例如
ServBay MongoDB
。 - Host:
127.0.0.1
- Port:
27017
(MongoDB 的默认端口) - User: 如果您为 MongoDB 配置了用户认证,请输入用户名。ServBay 默认安装的 MongoDB 可能没有启用认证,此时用户和密码可以留空。
- Password: 如果启用了认证,请输入密码。
- Authentication Database: 如果启用了认证,可能需要指定认证数据库,例如
admin
。 - Database: 可以留空,连接后选择数据库;或输入您想要连接的特定数据库名称。
- Name: 例如
- 测试连接并保存:
- 点击
Test
按钮验证连接。 - 点击
Connect
或Save
。
- 点击
使用TablePlus管理关系型数据库 (MariaDB/MySQL, PostgreSQL, SQLite)
连接成功后,TablePlus 提供了相似的界面和操作流程来管理 MariaDB/MySQL, PostgreSQL 和 SQLite 这类关系型数据库。
1. 创建数据库
- 连接到数据库服务器后(对于 SQLite 是连接到文件),您会看到左侧的侧边栏。
- 对于 MariaDB/MySQL 和 PostgreSQL,点击左侧的 Databases 标签页。
- 点击左上角的 "+" (新建) 按钮或右键点击空白区域选择
New Database...
。 - 输入新数据库的名称,选择字符集和排序规则(如果需要)。
- 点击
Save
。
2. 创建表
- 在左侧侧边栏中,选择您想要创建表的数据库。
- 点击左侧的 Tables 标签页。
- 点击左上角的 "+" (新建) 按钮或右键点击空白区域选择
New Table...
。 - 输入表名。
- 在下方区域定义表的字段:
- 点击 "+" 添加列。
- 输入列名 (Column Name)。
- 选择数据类型 (Type)。
- 设置长度 (Length/Values),如果类型需要。
- 勾选
PK
设置主键,NN
设置非空,UQ
设置唯一索引,AI
设置自增等属性。 - 可以设置默认值 (Default)。
- 可以添加注释 (Comment)。
- 定义完所有字段后,点击左上角的
Save
(或使用快捷键Cmd + S
) 保存表结构。
3. 添加数据
- 在左侧侧边栏中,选择包含您要操作的表的数据库。
- 点击左侧的 Tables 标签页,然后选择您想要添加数据的表。
- 在表数据视图中,点击底部的 + Row 按钮。
- 新的空行会出现,双击每个单元格输入数据值。
- 输入数据后,点击左上角的
Save
(或使用快捷键Cmd + S
) 保存更改。
4. 查询数据
- 在左侧侧边栏中,选择数据库和表。
- 直接在表数据视图中滚动浏览数据。
- 使用顶部的筛选框 (Filter) 快速查找数据。
- 对于更复杂的查询,可以使用 TablePlus 的 SQL 查询编辑器:
- 点击工具栏上的
SQL Query
按钮或使用快捷键Cmd + N
。 - 在新的查询标签页中输入您的 SQL 语句(例如
SELECT * FROM your_table WHERE condition;
)。 - 点击
Run Current
(闪电图标) 或使用快捷键Cmd + Enter
执行查询。结果将在下方显示。
- 点击工具栏上的
5. 更新数据
- 在表数据视图中,双击您想要修改的单元格。
- 输入新的数据值。
- 修改完成后,点击左上角的
Save
(或使用快捷键Cmd + S
) 保存更改。
6. 删除数据
- 在表数据视图中,选中您想要删除的一行或多行。
- 右键点击选中行,选择
Delete Row(s)
。 - 在弹出的确认对话框中点击
Delete
。 - 修改完成后,点击左上角的
Save
(或使用快捷键Cmd + S
) 保存更改。
7. 删除表
- 在左侧侧边栏中,选择包含您要删除表的数据库。
- 点击左侧的 Tables 标签页。
- 选中您想要删除的一张或多张表。
- 右键点击选中表,选择
Delete Table(s)
。 - 在弹出的确认对话框中输入确认文本(通常是表名)并点击
Delete
。
8. 删除数据库
- 在左侧侧边栏中,对于 MariaDB/MySQL 或 PostgreSQL,点击左侧的 Databases 标签页。
- 选中您想要删除的数据库。
- 右键点击选中数据库,选择
Delete Database
。 - 在弹出的确认对话框中输入确认文本(通常是数据库名)并点击
Delete
。 - 对于 SQLite: 删除数据库即是删除对应的
.sqlite
文件。您需要在文件系统中手动删除该文件。
使用TablePlus管理NoSQL数据库 (Redis, MongoDB)
TablePlus 对 Redis 和 MongoDB 提供了专门的管理界面,操作方式与关系型数据库有所不同。
管理 Redis 数据
连接到 Redis 实例后:
- 左侧侧边栏会显示 Redis 的数据库列表 (DB0, DB1, ...)。默认通常使用 DB0。
- 选择一个数据库,右侧会显示该数据库中的所有键 (Keys)。
- 查看键: 直接在列表中浏览键名。可以使用顶部的筛选框查找特定键。点击键名可以查看键的类型和值。对于字符串、哈希、列表、集合、有序集合等不同类型,TablePlus 会以合适的格式展示数据。
- 添加键: 点击底部的 + Row 按钮。选择键的类型,输入键名和对应的值。点击左上角的
Save
保存。 - 编辑键: 双击键的名称或值区域进行编辑。修改完成后点击左上角的
Save
保存。 - 删除键: 选中一个或多个键,右键点击选择
Delete Row(s)
,然后在确认对话框中点击Delete
。
管理 MongoDB 数据
连接到 MongoDB 实例后:
- 左侧侧边栏会显示 MongoDB 的数据库列表。
- 选择一个数据库,右侧会显示该数据库中的集合 (Collections)。
- 查看集合数据: 双击一个集合名称,右侧会切换到该集合的文档视图。文档通常以 JSON 或类似格式显示。
- 添加文档: 在集合文档视图中,点击底部的 + Row 按钮。TablePlus 会创建一个新的空文档,您可以双击字段名或值来编辑。点击左上角的
Save
保存。 - 编辑文档: 在集合文档视图中,双击文档中的字段名或值进行编辑。TablePlus 也支持直接编辑原始 JSON/BSON 格式。修改完成后点击左上角的
Save
保存。 - 删除文档: 在集合文档视图中,选中一个或多个文档,右键点击选择
Delete Row(s)
,然后在确认对话框中点击Delete
。 - 创建集合: 在左侧侧边栏中选中数据库,点击左侧的 Collections 标签页,然后点击左上角的 "+" 按钮或右键点击空白区域选择
New Collection...
。输入集合名并点击Save
。 - 删除集合: 在左侧侧边栏中选中数据库,点击左侧的 Collections 标签页,选中要删除的集合,右键点击选择
Delete Collection(s)
,确认删除。 - 删除数据库: 在左侧侧边栏中选中要删除的数据库,右键点击选择
Delete Database
,确认删除。
注意事项与常见问题解答
- ServBay 状态: 在尝试使用 TablePlus 连接数据库之前,请确保 ServBay 应用程序正在运行,并且您尝试连接的数据库服务(如 MariaDB, PostgreSQL, Redis, MongoDB)在 ServBay 的 软件包 (Packages) 标签页中显示为“运行中”。
- 防火墙: 确保 macOS 的防火墙或任何第三方安全软件没有阻止 TablePlus 与本地数据库端口 (3306, 5432, 6379, 27017) 的通信。
- 获取凭据: 再次强调,数据库的默认用户名和密码可以在 ServBay 应用的 数据库 (Databases) 标签页中找到。请妥善保管这些信息。
- 修改默认密码: 出于安全考虑,建议您在 ServBay 中修改数据库的默认 root 或默认用户密码。ServBay 的 数据库 (Databases) 标签页通常提供了重置密码的功能。重置后,请务必在 TablePlus 连接配置中更新密码。
- Socket vs. Port 连接: Socket 连接是直接通过文件系统路径进行进程间通信,通常用于同一台机器上的连接,性能略优于 TCP/IP (Port) 连接,且不受网络配置影响。Port 连接通过 TCP/IP 协议进行,可以使用
127.0.0.1
连接本地,也可以连接到网络上的其他数据库服务器。在 ServBay 本地环境下,两种方式通常都可以工作。 - 可以使用其他工具吗? 当然可以。除了 TablePlus,还有许多其他流行的数据库管理工具,如 DBeaver, DataGrip, Sequel Ace (MySQL/MariaDB), pgAdmin (PostgreSQL), MongoDB Compass (MongoDB) 等。选择哪款工具取决于您的个人偏好和具体需求。连接方法类似,只需在 ServBay 的 数据库 (Databases) 中获取正确的连接信息即可。
总结
通过本文的指导,您应该已经掌握了如何在 macOS 上使用 TablePlus 连接和高效管理 ServBay 本地开发环境中的各种数据库。TablePlus 强大的功能和友好的界面,结合 ServBay 提供的一体化本地环境,将极大地提升您的开发效率。记住从 ServBay 应用中获取准确的数据库连接凭据是成功连接的关键。祝您开发愉快!