我可以使用 mysql 或 psql 控制台连接到 Tarantool 吗?
Can I connect to Tarantool with mysql or psql console?
我发现我可以执行 SQL 请求,但只能在 Tarantool 内部执行。
我可以像 MySQL shell 或 Postgres shell 那样以某种方式连接到 Tarantool 吗?
mysql -u admin -h localhost -P 3301
# or
psql ...
或者如何配置其他只理解 MySQL 或 Postgres 连接的程序来使用 Tarantool?
您不能使用 mysql
或 psql
控制台命令连接到 Tarantool,因为每个服务器的通信协议都不同。出于同样的原因,例如,您无法使用 mysql
实用程序连接到 Posgres。但是,没有什么可以阻止您使用 tarantoolctl 向 Tarantool 执行 SQL 请求。一旦附加到实例(使用 tarantoolctl enter my_instance
或 tarantoolctl connect <uri>
),您可以将默认语言从 Lua 切换到 SQL:
\set language sql
\set delimiter ;
之后您将能够直接在控制台中执行 SQL 语句。
郑重声明,也可以使用 Lua functions 执行 SQL,但这似乎不太方便:
box.execute([[ SELECT 1, 2, 3 ]])
我发现我可以执行 SQL 请求,但只能在 Tarantool 内部执行。
我可以像 MySQL shell 或 Postgres shell 那样以某种方式连接到 Tarantool 吗?
mysql -u admin -h localhost -P 3301
# or
psql ...
或者如何配置其他只理解 MySQL 或 Postgres 连接的程序来使用 Tarantool?
您不能使用 mysql
或 psql
控制台命令连接到 Tarantool,因为每个服务器的通信协议都不同。出于同样的原因,例如,您无法使用 mysql
实用程序连接到 Posgres。但是,没有什么可以阻止您使用 tarantoolctl 向 Tarantool 执行 SQL 请求。一旦附加到实例(使用 tarantoolctl enter my_instance
或 tarantoolctl connect <uri>
),您可以将默认语言从 Lua 切换到 SQL:
\set language sql
\set delimiter ;
之后您将能够直接在控制台中执行 SQL 语句。
郑重声明,也可以使用 Lua functions 执行 SQL,但这似乎不太方便:
box.execute([[ SELECT 1, 2, 3 ]])