408 字
2 分鐘
MySQL-X-DevAPI
MySQL X DevAPI
透過這個 API 可以更方便的操作 MySQL 資料庫,MySQL X DevAPI 是在 MySQL 5.7.12 版本中引入的;
使用 X Protocol 協議,並透過 X DevAPI 更方便的操作資料庫。
環境
MySQL 5.7.12以上版本MySQL Shellmysqlsh 客戶端 install
檢查 MySQL 是否支援 X DevAPI
# -u 使用者, -p 使用密碼, -e 執行指令
mysql -u root -p -e "SHOW plugins"
# 安裝
mysql -u root -p -e "INSTALL PLUGIN mysqlx SONAME 'mysqlx.so';"使用語句查詢 X DevAPI 是否可用
SHOW VARIABLES LIKE 'mysqlx_%';透過簡單的 mysqlsh 使用:
# 單純進入 mysqlsh 終端,但為進行任何連接
mysqlsh
# 使用連接串進行連接 (<連接字>://<帳號>@<主機>:<端口>/<資料庫>)
mysqlsh mysqlx://root@localhost:33060/test
幾個常用的指令: 列表
\js… 切換成 js 模式\py… 切換成 python 模式\sql… 切換成 sql 模式\status… 查看連接狀態\!ls … 執行 shell 指令\W… 顯示 Warning\w… 不顯示 Warning\show… 顯示所有的資料庫\connect… 連接資料庫 ex.: \connect root@localhost:33060\reconnect… 重新連接資料庫\disconnect… 斷開資料庫\use… 使用資料庫
連入時就已經有的參數(非全部,參考這裏):
session: 會話 (\connect連線成功後,session 物件會有值可操作)- session.startTransaction()
- session.commit()
- session.rollback()
- session.getUri()
- session.getSchemas()
- session.getSchema(‘my_database’)
- session.close()
- session.isOpen()
db: 資料庫 (\use指令後,db 物件會有值可操作)- db.getCollections()
- db.getCollection(‘my_collection’)
- db.getTables()
- db.getTable(‘my_table’)
util: 工具 dev-mysql.util
MySQL X DevAPI 操作

可直接在 mysqlsh 中直接使用 SQL 指令
但前提是需要指定好所選資料庫,也就是 \use my_database,才能使用對應資料表的 SQL 指令。
\sql show create table users \G
