如果您在没有连接到 MySQL 服务器实例的情况下启动 MySQL Shell,则可以使用 MySQL Shell 的\connect
命令或shell.connect()
方法来启动连接并创建session
全局对象。或者,该
shell.getSession()
方法返回
session
全局对象。
MySQL Shell 的\connect
命令与类似 URI 的连接字符串一起使用,如上文和
使用类似 URI 的字符串或键值对连接到服务器中所述。您可以scheme
在类似 URI 的连接字符串的开头包含该元素,以选择要创建的会话对象的类型,例如:
mysql-js> \connect mysqlx://user@localhost:33060
或者,您可以省略该scheme
元素并使用命令的--mysqlx
( --mx
) 选项
Session
使用 X 协议创建对象,或
--mysql
( --mc
)
ClassicSession
使用经典 MySQL 协议创建对象。例如:
mysql-js> \connect --mysqlx user@localhost:33060
该shell.connect()
方法可以在 MySQL Shell 中用作
创建全局对象的\connect
命令
的替代方法。session
此连接方法可以使用类似 URI 的连接字符串,并将选定的协议指定为scheme
元素。例如:
mysql-js> shell.connect('mysqlx://user@localhost:33060')
通过该shell.connect()
方法,您还可以使用键值对指定连接参数,在 JavaScript 中作为 JSON 对象或在 Python 中作为字典提供。所选协议(mysqlx
或
mysql
)被指定为
scheme
密钥的值。例如:
mysql-js> shell.connect( {scheme:'mysqlx', user:'user', host:'localhost', port:33060} )
有关以这些方式连接到 MySQL 服务器实例的说明和示例,请参阅 使用类似 URI 的字符串或键值对连接到服务器。
您可以省略连接协议,让 MySQL Shell 根据您的其他连接参数自动检测它,例如为协议指定默认端口。要验证用于连接的协议,请使用 MySQL Shell 的\status
命令或
shell.status()
方法。
如果在全局对象已经存在时(在启动期间或之后创建)
使用\connect
命令或
shell.connect()
方法创建新连接,则 MySQL Shell 将关闭由全局对象表示的现有连接。即使您将
方法创建的新会话对象分配给不同的变量也是如此。全局对象的值(由变量引用)仍会使用新的连接详细信息进行更新。如果您希望有多个并发连接可用,请使用中描述的替代函数创建这些连接
session
session
shell.connect()
session
session
第 4.2.3 节,“JavaScript 和 Python 模式下的脚本会话”。