mysqlshell和mysql一样么?不一样,mysqlshell是旧mysql命令行客户端的一大进步。
mysqlshell是mysql的高级客户端和代码编辑器,除了提供的mysql功能外,mysqlshell还提供了以下功能:
1、支持的语言
mysqlshell处理用JavaScript、Python和SQL编写的代码。根据当前活动的语言,任何执行的代码都将作为这些语言之一进行处理。还有一些特定的mysqlshell命令,前缀为\,使我们能够配置mysqlshell,而不管当前选择的语言如何。
2、交互式代码执行
mysqlshell提供了一种交互式代码执行模式,我们可以在mysqlshell提示符下键入代码并处理每个输入的语句,并将处理结果打印在屏幕上。如果使用的终端支持,则支持Unicode文本输入,支持彩色终端。
可以使用命令编写多行代码,使mysqlshell能够缓存多行,然后将它们作为单个语句执行。
3、批处理代码执行
除了代码的交互执行之外,mysqlshell还可以从不同的来源获取代码并对其进行处理。这种以非交互方式处理代码的方法称为批处理执行。
由于批处理执行模式旨在用于单一语言的脚本处理,因此仅限于具有最少的非格式化输出并禁用命令的执行。为了避免这些限制,请使用--interactive命令行选项,它告诉mysqlshell执行输入,就好像它是一个交互式会话一样。在这种模式下,输入被逐行处理,就好像每一行都是在交互式会话中键入的一样。
4、支持的API
mysqlshell包括以下用JavaScript和Python实现的API,我们可以使用它们来开发与mysql交互的代码。
5、X协议支持
mysqlshell旨在为所有支持X协议的mysql产品提供一个集成的命令行客户端。mysqlshell的开发特性是为使用X协议的会话而设计的。mysqlshell也可以使用经典的mysql协议连接到不支持X协议的 mysql服务器。X DevAPI 中的一组最小功能可用于使用经典mysql协议创建的会话。
6、扩展
我们可以以报告和扩展对象的形式定义对mysqlshell基本功能的扩展。可以使用 JavaScript 或 Python 创建报告和扩展对象,并且可以使用任何活动的mysqlshell语言。我们可以在mysqlshell启动时自动加载的插件中持久保存报告和扩展对象。mysqlshell有几个可以使用的内置报告。
7、实用程序
mysqlshell包括以下用于使用mysql的实用程序:
(1)一个升级检查器实用程序,用于验证mysql服务器实例是否已准备好升级。
(2)一个JSON导入实用程序,用于将JSON文档导入mysql服务器集合或表。
(3)一个并行表导入实用程序,它拆分单个数据文件并使用多个线程将块加载到mysql表中。
8、API命令行集成
mysqlshell使用API命令语法公开其大部分功能,使我们能够轻松地将mysqlsh与其他工具集成。例如,可以创建bash脚本来管理具有此功能的InnoDB集群。使用语法将操作直接传递给mysqlshell全局对象,绕过 REPL 接口。
9、输出格式
mysqlshell可以以表格、选项卡或垂直格式或JSON输出形式返回结果。为了帮助将mysqlshell与外部工具集成,我们可以在从命令行启动 mysqlshell时为所有输出激活JSON包装。
10、记录和调试
mysqlshell可以在我选择的详细级别记录有关执行过程的信息。日志信息可以发送到应用程序日志文件、其他可查看目标和控制台的任意组合。
11、全球会议
在mysqlshell中,与mysql服务器实例的连接由会话对象处理。当我们第一次连接到mysql服务器实例时,可以在启动mysqlshell时或之后完成,sessio创建一个名为的mysqlshell全局对象来表示此连接。这个会话被称为全局会话,因为它可以在所有mysqlshell执行模式中使用。
总结:mysqlshell和mysql一样么?答案是不一样的,mysqlshell比mysql更有优势。
本文地址:https://www.htstack.com/news/4288.shtml
特别声明:以上内容均为 衡天云(HengTian Network Technology Co.,Limited) 版权所有,未经本网授权不得转载、摘编或利用其它方式使用上述作品。