Kết nối cơ sở dữ liệu

Để agent của bạn truy vấn cơ sở dữ liệu,
Chỉ đọc cho tới khi bạn nói khác đi

AgentsRoom quản lý các kết nối MySQL, PostgreSQL, SQL Server, MongoDB, SQLite và Google BigQuery của bạn và cho các agent AI lập trình một cách để chạy truy vấn trên đó. Chỉ đọc theo mặc định, mỗi lần một câu lệnh, và mật khẩu luôn nằm ngoài tầm với.

Một agent đọc được những hàng dữ liệu thật sẽ thôi đoán mò về dữ liệu của bạn. Một agent không ghi được vào đó sẽ thôi là rủi ro mà bạn phải giám sát từng dòng một.

Trình khách cơ sở dữ liệu
Chỉ đọc
AgentsRoom
SELECT id, email, plan FROM users LIMIT 50
DELETE FROM users WHERE id = 42
Bị chặn : kết nối đang ở chế độ chỉ đọc
Đường hầm SSHbastion.acme.dev
Mạng con riêng
Tập kết quả có giới hạn
Qua kết nối đã lưu của bạn
Mỗi lần gọi một câu lệnhMật khẩu không bao giờ rời khỏi ứng dụng

Cách AgentsRoom chạm tới một cơ sở dữ liệu trong mạng con riêng và trả lời một truy vấn chỉ đọc từ agent AI.

Một agent AI lập trình không nhìn thấy dữ liệu của bạn sẽ viết code dựa trên lược đồ mà nó tự tưởng tượng ra. Nó bịa ra một cột, cho rằng một enum có ba giá trị trong khi thực tế có bảy, và giải thích một lỗi bằng một giả thuyết thay vì bằng một hàng dữ liệu. Đưa cho nó một kết nối cơ sở dữ liệu sẽ sửa được chuyện đó, và đó cũng là cách nhanh nhất biến một agent hữu ích thành một sự cố. AgentsRoom được dựng quanh đúng sự căng thẳng ấy.

Bạn lưu các kết nối trong ứng dụng như vẫn làm với bất kỳ trình khách cơ sở dữ liệu nào : engine, host, port, user, cơ sở dữ liệu, và TLS khi máy chủ yêu cầu. Nếu cơ sở dữ liệu không chạm tới được từ internet mở, kết nối được định tuyến qua một đường hầm SSH hoặc một phiên chuyển tiếp cổng AWS SSM, dùng chính các kết nối SSH và SSM bạn đã lưu trong AgentsRoom. Đó là cách một cơ sở dữ liệu nằm trong mạng con riêng trở thành thứ bạn truy vấn được mà không phải mở nó ra cho cả thế giới.

Mọi kết nối đều bắt đầu ở chế độ chỉ đọc. Một câu SELECT thì chạy. Một câu lệnh làm thay đổi dữ liệu thì không, cho tới khi bạn đã cho phép ghi trên đúng kết nối đó và xác nhận thao tác. Mỗi lần gọi chỉ nhận một câu lệnh, nên không có gì nấp thêm sau dấu chấm phẩy, và tập kết quả bị giới hạn để một truy vấn rộng không làm ngập một agent hay một cửa sổ. Một kết nối còn có thể được đánh dấu là sản xuất, khiến việc xác nhận khó đưa ra một cách vô ý hơn.

Đọc chưa phải là toàn bộ công việc. Một kết nối lưu trên máy này sẽ hiện ra trên những máy còn lại của bạn, nên bạn chỉ phải thiết lập một cơ sở dữ liệu một lần thay vì mỗi máy một lần. Và một cơ sở dữ liệu có thể được xuất ra tệp, phục hồi lại từ tệp, hoặc chép thẳng sang một máy chủ khác, qua chính những đường hầm đó : đúng những việc mà trước đây bạn phải rời khỏi ứng dụng mới làm được.

Trình khách cơ sở dữ liệu mặc định rằng có một agent đang cầm lái

MySQL, PostgreSQL, SQL Server, MongoDB, SQLite và Google BigQuery, các engine máy chủ chạm tới được trong mạng riêng, với rào chắn bật sẵn.

Kết nối MySQL, PostgreSQL, SQL Server và MongoDB

Lưu một kết nối cho mỗi cơ sở dữ liệu : host, port, user, cơ sở dữ liệu cần mở và TLS khi máy chủ yêu cầu. Cơ sở dữ liệu cục bộ, bản staging và bản sao sản xuất đều nằm trong cùng một danh sách, sẵn sàng để chọn thay vì gõ lại.

Chạm tới một cơ sở dữ liệu riêng

Một cơ sở dữ liệu trong mạng con riêng không phải trường hợp đặc biệt. Định tuyến kết nối qua một đường hầm SSH hoặc một phiên chuyển tiếp cổng AWS SSM và AgentsRoom mở nó cho bạn, dùng lại các kết nối SSH và SSM bạn đã lưu trong ứng dụng. Một instance Google Cloud SQL được tiếp cận bằng tên kết nối qua Cloud SQL Auth Proxy, với chính phiên đăng nhập gcloud của bạn và không lưu gì cả.

Chỉ đọc theo mặc định

Một kết nối mới chỉ đọc được, không làm gì khác. Truy vấn trả về các hàng, còn câu lệnh làm thay đổi dữ liệu thì bị từ chối. Không ai phải nhớ bật chế độ an toàn, vì chế độ an toàn chính là nơi mọi kết nối bắt đầu.

Hai lớp khóa trước một lần ghi

Ghi đòi hai hành động có chủ ý, không phải một. Kết nối phải được cho phép ghi, và bản thân thao tác phải được xác nhận rõ ràng. Một cú nhấp bất cẩn không thể kéo theo một câu UPDATE thiếu mệnh đề WHERE.

Mỗi lần gọi một câu lệnh

Mỗi lần gọi mang đúng một câu lệnh. Bất cứ thứ gì xếp sau dấu chấm phẩy đều bị từ chối chứ không được thực thi, nên một lần đọc trông như một lần đọc không thể lén mang theo câu lệnh thứ hai. Thêm vào đó, tập kết quả còn bị giới hạn.

Sản xuất được đánh dấu rõ

Đánh dấu một kết nối là sản xuất và việc xác nhận trở nên khó hơn. Cơ sở dữ liệu quan trọng thôi trông giống hệt bản sao cục bộ, cả với bạn vào cuối một ngày dài lẫn với một agent đang chạy hết một danh sách việc.

Kết nối của bạn, trên mọi máy

Một kết nối lưu ở máy văn phòng có mặt luôn trên laptop : tên, host, port, user, cơ sở dữ liệu mặc định và đường hầm mà nó đi qua. Thứ duy nhất ở lại là mật khẩu, được mã hoá ngay trên chiếc máy bạn đã gõ nó, nên mỗi máy chỉ hỏi bạn một lần.

Xuất, nhập, sao chép

Đổ một cơ sở dữ liệu ra tệp .sql, nạp một tệp như vậy vào một cơ sở dữ liệu, hoặc chép thẳng cơ sở dữ liệu này đè lên cơ sở dữ liệu kia. Đích đến được sao lưu trước khi bị ghi đè, còn thay hẳn nó là một quyết định riêng, được xác nhận riêng.

Agent truy vấn cơ sở dữ liệu, chúng không bao giờ cầm mật khẩu

Thông tin đăng nhập cơ sở dữ liệu của bạn do AgentsRoom giữ, chứ không được phát ra ngoài. Một agent xin chạy một truy vấn trên một kết nối mà nó biết theo tên, ứng dụng mở kết nối, chạy câu lệnh và trả về các hàng. Mật khẩu không bao giờ nằm trong thứ agent nhận được, không bao giờ nằm trong truy vấn nó viết, và không bao giờ nằm trong cuộc trò chuyện nó lưu.

Quy tắc chỉ đọc là nửa còn lại, và với một agent thì đó không phải thứ mà nó nói vài câu là thoát ra được. Công cụ mà agent dùng để truy vấn từ chối mọi thứ ngoài một lần đọc, trừ khi cả hai điều sau cùng đúng: kết nối được cho phép ghi, và bạn đã bật “Cho phép tác tử ghi dữ liệu” cho kết nối đó. Tùy chọn này mặc định tắt, và việc kiểm tra chạy trong ứng dụng desktop chứ không phải trong tiến trình của agent. Các thao tác ghi của chính bạn trong bảng điều khiển vẫn đòi một xác nhận rõ ràng, và xác nhận đó cố ý khó đưa ra hơn khi kết nối được đánh dấu là sản xuất. Một khi kết nối đã mở cho agent ghi, các thao tác ghi đó chạy mà không cần xác nhận ấy, nên hãy dành tùy chọn này cho cơ sở dữ liệu mà bạn tin tưởng giao cho agent. Ở mọi nơi khác, hậu quả tệ nhất của một truy vấn dở vẫn là một câu trả lời sai chứ không phải một bảng bị mất.

Quy tắc một câu lệnh khép lại lỗ hổng kinh điển. Một lần gọi mang một câu lệnh thì không thể nối thêm dấu chấm phẩy và một câu thứ hai, nên một truy vấn đọc lên có vẻ vô hại lúc review không thể làm chuyện khác lúc thực thi. SQL Server không cần dấu chấm phẩy đó, nên ở đó một lần đọc là một câu SELECT hoặc WITH không chứa bất kỳ từ khóa ghi hay giao dịch nào, và nó chạy bên trong một giao dịch luôn được rollback. Kết hợp với tập kết quả có giới hạn, một sai lầm vẫn chỉ là sai lầm chứ không trở thành một lần xuất dữ liệu.

Engine được hỗ trợ

Sáu engine, và chúng tôi gọi tên cả những cái còn thiếu

MySQL và MariaDB, PostgreSQL, SQL Server (bao gồm cả Azure SQL và Amazon RDS for SQL Server), MongoDB, SQLite và Google BigQuery. Mỗi cái có driver riêng thay vì một lớp chuyển đổi dùng chung, vì chúng khác nhau thật sự : một phiên PostgreSQL hoặc SQL Server gắn với đúng một cơ sở dữ liệu, MongoDB nhận một truy vấn chứ không phải SQL, T-SQL không cần dấu chấm phẩy giữa hai câu lệnh, mỗi lần xuất đều chạy bằng chính bộ công cụ đi kèm engine đó, SQLite đơn giản là một tệp trên máy tính của bạn, không có máy chủ, người dùng hay mật khẩu, còn một kết nối BigQuery là một dự án Google Cloud cùng một tập dữ liệu (dataset) mặc định, đăng nhập bằng chính tài khoản Google của bạn (gcloud auth application-default login), không lưu khoá nào. Bốn engine máy chủ được chạm tới trực tiếp, hoặc qua một đường hầm SSH hay một phiên chuyển tiếp cổng AWS SSM khi chúng không phơi ra internet mở.

Oracle, Redis và những cái còn lại thì không được hỗ trợ. Với SQL Server, bạn đăng nhập bằng một tài khoản đăng nhập SQL (không hỗ trợ xác thực Windows, Active Directory và Entra ID), và không có xuất, nhập hay sao chép. Với BigQuery, Google tính phí mỗi truy vấn theo số byte mà truy vấn đó đọc, nên mỗi kết nối có một mức trần chi phí cho mỗi truy vấn (mặc định 1 GiB, có thể điều chỉnh) : truy vấn nào vượt mức đó sẽ bị từ chối thay vì bị tính tiền. Mở một bảng thì miễn phí và chỉ đọc, các agent của bạn dùng đúng các công cụ db_list, db_schema và db_query với cùng những rào chắn và thấy được số byte mà mỗi truy vấn đã đọc, và ở đó cũng không có xuất, nhập hay sao chép. Bạn xứng đáng biết điều đó trước khi tải chứ không phải sau khi tải. Engine nào tới lượt tiếp theo là do những gì mọi người yêu cầu quyết định, nên nếu thiếu cái của bạn, hãy nói rõ đó là cái nào trên backlog công khai và nó sẽ được tính.

Yêu cầu engine cơ sở dữ liệu của bạn
Xuất, nhập, sao chép

Di chuyển cả một cơ sở dữ liệu, không chỉ đọc nó

Xuất một cơ sở dữ liệu ra một tệp. Nhập một tệp vào một cơ sở dữ liệu. Hoặc chép thẳng cơ sở dữ liệu này đè lên cơ sở dữ liệu kia, kể cả qua đường hầm SSH hay phiên AWS SSM bạn đã lưu sẵn. Mỗi engine chạy bằng bộ công cụ chính thức của riêng nó, ghi theo luồng xuống đĩa, nên một cơ sở dữ liệu nặng vài gigabyte chỉ là một thanh tiến trình chứ không phải một lần treo máy.

Những công cụ đó đi kèm cơ sở dữ liệu, không đi kèm AgentsRoom : mysqldump và mysql, pg_dump và psql, mongodump và mongorestore. SQL Server không có công cụ tương đương nào truyền trọn một cơ sở dữ liệu, nên các kết nối SQL Server không có xuất, nhập hay sao chép. Khi các công cụ đó không có trên máy, ứng dụng nói rõ thiếu đúng những cái nào và để bạn chỉ ra thư mục chứa chúng, đúng như một trình khách cơ sở dữ liệu nên làm : mở từ Dock hay từ menu Start, một ứng dụng chỉ thấy một PATH tối thiểu, nếu không nó sẽ báo là thiếu chúng ngay trên chiếc máy đã cài sẵn.

Chính ở khâu sao chép, một cú nhấp sai làm mất cả ngày, nên nó được dựng quanh đúng rủi ro đó chứ không quanh kịch bản suôn sẻ.

  • Một kết nối chỉ đọc từ chối việc nhập ngay từ đầu, trước khi có gì được mở ra.
  • Cơ sở dữ liệu đích được sao lưu ra một tệp do bạn chọn, trước khi có dù chỉ một câu lệnh được áp dụng.
  • Phần xác nhận nêu rõ tên kết nối và tên cơ sở dữ liệu, và nói to hơn khi kết nối được đánh dấu là sản xuất.
  • Xoá rồi tạo lại cơ sở dữ liệu đích là một tuỳ chọn riêng, và trên một kết nối sản xuất bạn phải gõ lại tên cơ sở dữ liệu.

Từ một cơ sở dữ liệu riêng đến một câu trả lời

Lưu kết nối, định tuyến nó, rồi truy vấn hoặc để một agent làm việc đó.

01

Lưu kết nối

Thêm cơ sở dữ liệu : host, port, user, tên cơ sở dữ liệu, và TLS nếu máy chủ yêu cầu. Đặt cho nó một cái tên mà sau này bạn nhận ra, và đánh dấu là sản xuất nếu đúng là như vậy.

02

Định tuyến nếu nó nằm trong mạng riêng

Nếu cơ sở dữ liệu không chạm tới được trực tiếp, trỏ kết nối vào một đường hầm SSH hoặc một phiên chuyển tiếp cổng AWS SSM dựng từ các kết nối đã lưu sẵn trong AgentsRoom. Một cơ sở dữ liệu trong mạng con riêng trở nên chạm tới được mà không cần phơi nó ra công khai. Trên Google Cloud, hãy chọn instance Cloud SQL: AgentsRoom khởi động Cloud SQL Auth Proxy cho bạn.

03

Truy vấn nó, hoặc để một agent truy vấn

Chạy câu lệnh của bạn từ ứng dụng, hoặc để một agent chạy một câu qua MCP. Chỉ đọc cho tới khi bạn đổi, mỗi lần gọi một câu lệnh, tập kết quả có giới hạn, và một xác nhận rõ ràng đứng giữa mọi lần ghi và dữ liệu của bạn.

Khi một agent cần đúng những hàng dữ liệu thật

Những lúc mà đọc dữ liệu sản xuất là con đường ngắn nhất tới bản sửa.

Gỡ lỗi trên dữ liệu thật

Lỗi chỉ xuất hiện với vài tài khoản. Cho agent đọc đúng những hàng đó và nó tìm ra giá trị làm hỏng logic, thay vì đưa ra ba giả thuyết về việc dữ liệu có thể trông như thế nào.

Một cơ sở dữ liệu không công khai

Cơ sở dữ liệu nằm trong mạng con riêng, không có điểm truy cập công khai. Định tuyến kết nối qua một đường hầm SSH hoặc một phiên AWS SSM dựng trên các kết nối đã lưu của bạn, và truy vấn nó mà không mở một cổng nào ra internet.

Để agent kiểm chứng, đừng để nó đoán

Trước khi viết một bản migration hay một truy vấn, agent nhìn được thứ thực sự đang nằm trong cơ sở dữ liệu. Nó đọc, nó báo cáo, và trừ khi bạn đã mở kết nối đó cho agent ghi, nó không có cách nào thay đổi bất cứ thứ gì trong lúc đó.

Sản xuất, không kèm rủi ro ghi

Đọc dữ liệu sản xuất thường là cần thiết, còn ghi vào đó thì gần như không bao giờ cần giữa một nhiệm vụ. Đánh dấu kết nối là sản xuất, giữ nó ở chế độ chỉ đọc, và khác biệt giữa điều tra và làm hỏng thôi phụ thuộc vào việc có ai đó đang để ý hay không.

Làm mới staging bằng dữ liệu thật

Lỗi chỉ tái hiện trên những hàng dữ liệu thật. Hãy chép cơ sở dữ liệu sang máy chủ staging của bạn, qua đường hầm đã lưu sẵn, còn những gì đang nằm ở đó thì được sao lưu ra tệp trước.

Mở laptop ra, mọi thứ đã sẵn ở đó

Các kết nối đi theo tài khoản của bạn: cùng host, cùng đường hầm, cùng những dấu chỉ đọc và sản xuất. Khi bật mật khẩu đồng bộ, mật khẩu cũng đi theo, được mã hóa đầu cuối, nên không phải gõ lại gì; nếu không bật, mỗi máy hỏi mật khẩu đúng một lần.

Agent AI + SQL

Các agent của tôi truy vấn cơ sở dữ liệu bằng cách nào?

db_listdb_schemadb_querydb_connection_new

Qua AgentsRoom MCP, với bốn công cụ. db_list trả về các kết nối bạn đã lưu cùng siêu dữ liệu của chúng, db_schema đi qua các lược đồ, các bảng và các cột mà không cần một dòng SQL, db_query chạy một câu lệnh và trả về các hàng, còn db_connection_new đề xuất một cơ sở dữ liệu bạn chưa lưu. AgentsRoom mở kết nối, kể cả đường hầm SSH hay phiên AWS SSM đứng phía trước nếu có. Thứ đi ngược về phía agent là một tập kết quả, không bao giờ là một thông tin đăng nhập.

Agent chỉ ghi được khi bạn bật “Cho phép tác tử ghi dữ liệu” trên một kết nối cũng đã được cho phép ghi. Tùy chọn phải tự bật này mặc định tắt và được đồng bộ cùng kết nối trên toàn bộ tài khoản của bạn. Khi đã bật, các thao tác ghi chạy ngay lập tức, nên chỉ dùng nó khi bạn tin tưởng giao cơ sở dữ liệu đó cho agent. Ứng dụng desktop kiểm tra quyền này trong tiến trình chính của nó, và db_query vẫn chỉ nhận một câu lệnh cho mỗi lần gọi.

Đăng ký một cơ sở dữ liệu cũng có thể hoàn toàn là việc của agent. db_connection_new giữ con đường có xem lại: nó mở biểu mẫu tạo mới đã điền sẵn host, người dùng và kết nối SSH hay AWS SSM cần dùng để chạm tới nó, rồi bạn xem lại, gõ mật khẩu và lưu, không có gì được lưu trước khi bạn làm việc đó. Trừ khi bạn tắt "Agent có thể quản lý kết nối" (Cài đặt, bật theo mặc định), db_connection_save ghi thẳng kết nối đó, và mật khẩu vẫn không bao giờ đi qua cuộc trò chuyện: nó được sao chép từ một bí mật trong kho mà agent chỉ nêu tên. Agent nhận được thứ nó cần để suy luận về dữ liệu của bạn, còn những con đường thường biến quyền truy cập đó thành sự cố thì nó không có lấy một con đường nào.

Mọi truy vấn mà agent chạy cũng đều hiện rõ. Các lệnh gọi db_query và db_schema xuất hiện trong tab "Hoạt động" của bảng bên phải, kèm câu SQL và những hàng đầu tiên trả về, với một nhật ký riêng cho mỗi cơ sở dữ liệu; ảnh đại diện của agent hiện trên nút "Cơ sở dữ liệu" và, kèm huy hiệu "Agent đang làm việc", trong danh sách cơ sở dữ liệu của bạn. Bạn cũng có thể theo dõi từ điện thoại, trong thẻ agent của ứng dụng di động. Nhật ký này chỉ đi giữa máy tính và điện thoại của bạn, được mã hóa đầu cuối và che các thông tin bí mật: không tập kết quả nào được lưu trên máy chủ.

Khám phá AgentsRoom MCP

Vẫn là tab "Hoạt động" liệt kê các lệnh gọi db_query và db_schema của bạn, ở đây được quay trên một máy chủ SSH đã lưu : một agent chạy ba lệnh, mỗi lệnh hiện lên kèm kết quả, mã thoát và thời lượng, rồi nhật ký của kết nối đó mở ra đầy đủ. Nhật ký này nằm lại trên máy tính của bạn.

Xem trên YouTube

Câu hỏi thường gặp

Hỏi chúng tôi điều khác
Những cơ sở dữ liệu nào được hỗ trợ?
MySQL và MariaDB, PostgreSQL, SQL Server (cùng Azure SQL và Amazon RDS for SQL Server), MongoDB, SQLite và Google BigQuery. Mỗi cái có driver riêng. Các engine máy chủ chạm tới được trực tiếp hoặc qua một đường hầm SSH hay một phiên chuyển tiếp cổng AWS SSM; một kết nối SQLite là một tệp trên máy tính của bạn mà bạn chọn theo đường dẫn của nó; một kết nối BigQuery là một dự án Google Cloud, được mở bằng chính tài khoản Google của bạn và có một mức trần chi phí cho mỗi truy vấn (mặc định 1 GiB) để một truy vấn tốn kém bị từ chối thay vì bị tính tiền. Oracle, Redis và phần còn lại hôm nay chưa được hỗ trợ. Nếu bạn cần một trong số đó, hãy yêu cầu trên backlog công khai : danh sách lớn lên theo đúng những gì mọi người thực sự yêu cầu.
Agent AI có ghi được vào cơ sở dữ liệu của tôi không?
Có, khi bạn cho phép một cách rõ ràng. Một agent chỉ ghi được khi kết nối đó được cho phép ghi và bạn bật “Cho phép tác tử ghi dữ liệu” trong phần cài đặt của kết nối đó. Khi ấy các thao tác ghi chạy ngay lập tức, nên chỉ bật tùy chọn này khi bạn tin tưởng giao cơ sở dữ liệu đó cho agent. Nếu không, db_query vẫn chỉ đọc.
Làm sao tôi chạm tới một cơ sở dữ liệu trong mạng con riêng?
Định tuyến kết nối qua một đường hầm SSH hoặc một phiên chuyển tiếp cổng AWS SSM, dựng từ các kết nối SSH và SSM bạn đã lưu trong AgentsRoom. Ứng dụng mở đường hầm hay phiên đó rồi nối cơ sở dữ liệu qua nó, nên cơ sở dữ liệu vẫn không chạm tới được từ internet công cộng. Với Google Cloud SQL, hãy chọn instance (project:region:instance) và AgentsRoom chạy Cloud SQL Auth Proxy bằng chính phiên đăng nhập gcloud của bạn, qua IP riêng nếu cần và bằng xác thực cơ sở dữ liệu IAM nếu bạn muốn không dùng mật khẩu.
Các agent của tôi có thấy mật khẩu cơ sở dữ liệu không?
Không. Agent truy vấn qua MCP bằng cách gọi tên một kết nối. AgentsRoom giữ thông tin đăng nhập và tự chạy câu lệnh, nên mật khẩu không bao giờ được trả về cho agent, không bao giờ được viết vào truy vấn và không bao giờ là một phần của cuộc trò chuyện.
Một agent có chạy được nhiều câu lệnh cùng lúc không?
Không. Một lần gọi mang đúng một câu lệnh. Bất cứ thứ gì xếp sau dấu chấm phẩy đều bị từ chối chứ không được thực thi, điều đó loại bỏ cách lâu đời nhất để giấu một lần ghi bên trong thứ trông như một lần đọc.
Đánh dấu một kết nối là sản xuất thì thay đổi điều gì?
Nó siết chặt xác nhận cần có trước một lần ghi. Cơ sở dữ liệu quan trọng thôi hành xử như bản sao cục bộ, đó là điều bạn muốn vào cuối một ngày dài và còn muốn hơn nữa ở một agent đang chạy hết một danh sách việc.
Chuyện gì xảy ra với một truy vấn trả về rất nhiều hàng?
Tập kết quả bị giới hạn. Một truy vấn đáng lẽ trả về cả một bảng khổng lồ sẽ quay về ở dạng cắt bớt thay vì làm ngập cửa sổ hay ngữ cảnh của agent, nên một câu SELECT rộng vẫn chỉ là chuyện bất tiện chứ không thành một lần xuất dữ liệu của bạn.
Một agent có thêm được kết nối cơ sở dữ liệu không?
Có, và theo mặc định nó thậm chí còn tự lưu được nữa. db_connection_save ghi thẳng kết nối đó, không cần biểu mẫu, và mật khẩu không bao giờ xuất hiện trong một cuộc trò chuyện: tác nhân chỉ nêu tên một bí mật trong kho của bạn và AgentsRoom sao chép nó vào keychain. Hãy ưu tiên db_connection_new khi bạn muốn xem lại trước: nó mở biểu mẫu tạo mới đã điền sẵn host, cổng, người dùng và kết nối SSH hay AWS SSM cần dùng để chạm tới cơ sở dữ liệu, và không có gì được lưu trước khi bạn xem lại, gõ mật khẩu và lưu, tác nhân không bao giờ cung cấp một thông tin đăng nhập nào. Tắt "Agent có thể quản lý kết nối" trong Cài đặt thì chỉ còn con đường có xem lại.
Một agent tìm hiểu lược đồ của tôi bằng cách nào?
Bằng db_schema, công cụ khám phá một kết nối đã lưu mà không cần chút SQL nào. Gọi không tham số thì nó liệt kê các lược đồ, gọi kèm một cơ sở dữ liệu thì liệt kê các bảng và view, gọi kèm một bảng thì trả về các cột, kiểu dữ liệu, khả năng nhận NULL, khóa và giá trị mặc định của chúng. Cách này rẻ hơn và an toàn hơn việc bắt một agent tự tay truy vấn information_schema.
Các kết nối cơ sở dữ liệu của tôi có được đồng bộ giữa các máy không?
Có. Tên, host, port, user, cơ sở dữ liệu mặc định, phạm vi, trạng thái chỉ đọc, đánh dấu sản xuất cùng đường hầm SSH hay SSM mà nó đi qua đều theo tài khoản của bạn: một kết nối lưu trên máy này sẽ hiện ra ở những máy còn lại thay vì phải gõ lại. Theo mặc định, mật khẩu vẫn nằm mã hóa trong keychain của chính chiếc máy bạn đã gõ nó, nên một kết nối đến từ máy khác sẽ hỏi mật khẩu một lần. Bật mật khẩu đồng bộ trong Cài đặt > Tài khoản và mật khẩu cũng đi theo, được mã hóa đầu cuối bằng một khóa mà chỉ các máy tính của bạn nắm giữ: AgentsRoom lưu nó mà không thể đọc được, và mật khẩu bạn đổi trên một máy sẽ được cập nhật trên các máy khác. Bạn vẫn có thể giữ bất kỳ mật khẩu nào chỉ trên một máy.
Tôi có thể xuất một cơ sở dữ liệu rồi nhập nó ở nơi khác không?
Có, trên MySQL, PostgreSQL và MongoDB. Bạn xuất được một cơ sở dữ liệu ra tệp, nhập một tệp như vậy vào một cơ sở dữ liệu, hoặc chép thẳng cơ sở dữ liệu này đè lên cơ sở dữ liệu kia, kể cả qua những đường hầm SSH hay SSM bạn đã lưu sẵn. Mỗi engine chạy bằng bộ công cụ chính thức của riêng nó (mysqldump và mysql, pg_dump và psql, mongodump và mongorestore), vốn đi kèm cơ sở dữ liệu chứ không đi kèm AgentsRoom : nếu không tìm thấy chúng, ứng dụng sẽ hỏi bạn thư mục chứa chúng. Việc chép chỉ chạy giữa hai kết nối cùng một engine, vì một bản dump chỉ phục hồi được vào đúng engine đã tạo ra nó. Trên một kết nối chỉ đọc thì việc nhập bị từ chối, cơ sở dữ liệu đích được sao lưu ra một tệp do bạn chọn trước khi có gì được ghi vào đó, và thay thế cơ sở dữ liệu đích là một tuỳ chọn riêng mà phần xác nhận có nêu đúng tên cơ sở dữ liệu. SQLite thì không có những thứ này : bản thân cơ sở dữ liệu đã là một tệp, bạn chép nó như mọi tệp khác. SQL Server cũng không có những thứ này : không có công cụ nào của Microsoft truyền trọn một cơ sở dữ liệu theo cách mysqldump làm (sqlpackage ghi ra một tệp .bacpac, bcp chép từng bảng một).
Tài khoản lưu giữ các kết nối của tôi được bảo vệ thế nào?
Mật khẩu nằm trong keychain của hệ thống, và tài khoản mang các kết nối của bạn sang những máy tính khác có thể yêu cầu thêm một bằng chứng thứ hai khi đăng nhập. Hãy bật Xác thực hai yếu tố trong Cài đặt, Tài khoản: khi đó mỗi lần đăng nhập bằng mật khẩu, trên desktop, điện thoại và trang web, bạn sẽ được hỏi một mã 6 chữ số từ ứng dụng xác thực trên điện thoại, và bạn nhận được 10 mã khôi phục dùng một lần phòng khi mất điện thoại. Chỉ một mật khẩu bị đánh cắp không còn đủ để mở tài khoản nữa.

Ảnh chụp màn hình

Ảnh chụp thật từ ứng dụng, được bổ sung khi tính năng này phát triển.

  • Biểu mẫu kết nối cơ sở dữ liệu với ghi chú rằng không có mật khẩu nào được lưu trữ trên máy tính này
    AgentsRoom cho bạn biết khi một kết nối không có mật khẩu trên máy tính này, mà không cần đoán nguồn gốc của nó.
  • Trình chọn công cụ cơ sở dữ liệu liệt kê MySQL, PostgreSQL, SQL Server, MongoDB, SQLite và BigQuery
    Kết nối Google BigQuery với đăng nhập Google của riêng bạn
  • Biểu mẫu kết nối BigQuery với ID dự án, tập dữ liệu mặc định và giới hạn chi phí cho mỗi truy vấn
    Giới hạn chi phí mà một truy vấn BigQuery có thể tính, theo từng kết nối
  • Biểu mẫu kết nối PostgreSQL với yêu cầu TLS được đánh dấu và tùy chọn Tin tưởng chứng chỉ máy chủ
    Kết nối TLS trực tiếp xác minh chứng chỉ máy chủ, với tùy chọn cho máy chủ tự ký
1 / 4

Có thể bạn cũng thích

RDS qua AWS SSM

Chạm tới một instance Amazon RDS không có endpoint công khai, ngay từ máy của bạn, thông qua aws ssm start-session và tài liệu AWS-StartPortForwardingSessionToRemoteHost. Không có bastion nào phải bảo trì, không VPN, không quy tắc SSH đi vào. AgentsRoom mở phiên trên một cổng loopback rồi nối trình khách cơ sở dữ liệu qua đó. MySQL, PostgreSQL, SQL Server và MongoDB, tức là RDS MySQL, RDS PostgreSQL, RDS for SQL Server, Aurora và DocumentDB.

Cloud SQL Auth Proxy

Chạm tới một instance Cloud SQL for MySQL hoặc PostgreSQL ngay từ máy của bạn, kể cả khi chỉ có IP riêng, mà không cần VM bastion. AgentsRoom chạy Cloud SQL Auth Proxy trên một cổng loopback bằng Application Default Credentials của gcloud, hỗ trợ xác thực cơ sở dữ liệu bằng IAM và cho phép agent AI truy vấn ở chế độ chỉ đọc.

Kết nối SSH

Lưu các kết nối SSH của bạn, mở terminal tích hợp qua SSH và chạy Claude Code, Codex hoặc Antigravity CLI trực tiếp trên máy chủ từ xa hay VPS của bạn. Xác thực bằng khóa SSH hoặc mật khẩu, hồ sơ kết nối theo từng dự án, không cần ứng dụng SSH riêng.

Trình quản lý bí mật

Lưu khóa API, token và mật khẩu trong keychain của hệ điều hành, tham chiếu chúng bằng {{secret:NAME}} trong lệnh dev và trong môi trường của agent, rồi để AgentsRoom phân giải lúc khởi chạy. Agent chỉ thấy tên, không bao giờ thấy giá trị, và không có gì được đồng bộ lên máy chủ.

Dev Terminals

Trình quản lý terminal và khởi chạy tiến trình theo từng dự án. Khởi động backend, frontend và worker chỉ một cú nhấp, cục bộ hoặc trên một máy chủ từ xa.

AgentsRoom MCP

Server MCP cho phép các agent của bạn lái chính AgentsRoom : dự án, terminal, backlog và kết nối, cùng những rào chắn đi kèm.

Kỹ Sư DevOpsNgười Viết Nội DungNhà Phát Triển FrontendNhân Viên Kinh DoanhNhà Phát Triển BackendHuấn Luyện Viên & Đào TạoKiến Trúc Sư Phần MềmChuyên Viên Pháp ChếKỹ Sư QATài Chính & Hành ChínhNhà Phát Triển Full-StackNhà Thiết Kế Sáng TạoNhà Phát Triển Di ĐộngNhà Nghiên CứuKỹ Sư Bảo MậtNhân Sự & Tuyển Dụng
Quản Lý Dự ÁnBiên Dịch ViênChuyên Gia GitChuyên Viên Phân Tích Dữ LiệuChuyên Gia SEOKế ToánChuyên Gia Địa Phương HóaTruyền Thông & PRNgười Đưa Ra Ý TưởngVận Hành & LogisticsChuyên Gia Tiếp ThịChăm Sóc Khách HàngTrợ lý dự ánNhân Viên Mua HàngQuản Lý Cộng ĐồngTrợ Lý Cá Nhân

Cho agent của bạn dữ liệu, đừng cho khóa

Tải AgentsRoom, lưu các kết nối MySQL, PostgreSQL, SQL Server, MongoDB, SQLite và Google BigQuery của bạn, chạm tới những kết nối máy chủ qua một đường hầm SSH hay một phiên AWS SSM, và để các agent truy vấn chúng, ở chế độ chỉ đọc trừ khi bạn mở một kết nối cho chúng ghi.

Tải vềMiễn phí

Ứng dụng đồng hành: theo dõi agent khi đi đường

Sử dụng Claude, Codex, Antigravity CLI hoặc nhà cung cấp AI khác.

Tải tiện ích mở rộng
Chrome Web Store

Gửi lỗi và yêu cầu thẳng vào backlog công khai của bạn.

Đọc agent như một cuộc trò chuyện

Mỗi agent có vai trò, khuôn mặt và một luồng tin nhắn bạn đọc như ứng dụng nhắn tin.

Giao diện hội thoại

Giao diện hội thoại AgentsRoom: công việc của một AI coding agent hiển thị như một luồng trò chuyện
Nhiều dự án
Đa nhà cung cấp
Nhiều agent
Trạng thái trực tiếp
File diff & commit
Ứng dụng đồng hành mobile
Xem trước trực tiếp
Đội agent
Tự động hóa trình duyệt
Dev theo backlog
Thư viện prompt
Thư viện skill
Xem tất cả tính năng