简介
mysqlsh是个msyql的命令行工具,好像很智能,官方推荐在5.7和8版本中使用.我对这个有些不了解,以为它就是个简单的sql命令执行工具,后来我才发现,事情并没有想象中简单.
现在我简单理解为它是交互式命令行工具,可以在其中运行python,js代码来操作mysql,省去了繁琐的sql操作.
官方文档参考
官方文档
shell命令
这文章今天还修订过,厉害,文档更新很频繁嘛.
个人笔记
-
基本
\? {command} #查看命令的用法,也可以用\help {command}
\py #python模式
\js #js模式
\sql #sql模式
\exit #退出
-
连接数据库
mysqlsh --user root --host localhost --port 3306
-
使用\connect命令后接uri字符串连接.
默认为mysql方式.参见使用uri字符串连接
可以使用多种方式,如\connect [--mx|--mysqlx|--mc|--mysql] <URI>
\connect root@localhost:3306
-
使用键值对连接.
shell.connect({'user':'root','host':'localhost','port':3306})
mysqlsh,\connect,shell.connect()和uri,键值对之间好像是有组合关系,我只试了这三种组合关系,其他有些不会用.
感觉文档很乱,看的我难受.
-
代码执行
要指定特定的文件需要转换到特定的语言模式.比如python模式下,可以这样做.
mysqlsh --py < code.py
算了,就这样吧.我还是用workbench吧,不知道怎么用python操作数据库.我也不知道它用哪个库,哪个方法.