1 / 13

MySQL Workbench. The Ultimate Guide to DBA Productivity: Writing Plugins and Scripts

MySQL Workbench. The Ultimate Guide to DBA Productivity: Writing Plugins and Scripts. Vladimir Kolesnikov Software Engineer, Developer Tools. Session Contents. Workbench General Overview Workbench Architecture, GRT [break] GRT Shell LUA scripting and Libraries [break] GRT LUA Plugins

Download Presentation

MySQL Workbench. The Ultimate Guide to DBA Productivity: Writing Plugins and Scripts

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MySQL Workbench. The Ultimate Guide to DBA Productivity: Writing Plugins and Scripts Vladimir Kolesnikov Software Engineer, Developer Tools

  2. Session Contents • Workbench General Overview • Workbench Architecture, GRT • [break] • GRT Shell • LUA scripting and Libraries • [break] • GRT LUA Plugins • [break] • GRT C++ Plugins

  3. Workbench General Overview • EER modeling tool • Overview page lists model entities • Canvas is where you visually create and edit your EER models • Use export/import/synchronization tools to interact with live servers or store data in SQL scripts • Use validation tools to check your models • Various utilities for your convenience – printing, export to PDF, PNG… • Cross-platform with native GUIs. Runs on Win 32/64 XP/Vista, with OS X and Linux coming soon

  4. Workbench General Overview • Two Editions – OSS and Standard

  5. Workbench Architecture • Workbench core manages the most essential functions • OS Abstraction • Inter-thread communication and messaging • Graphics • GUI • Generic APIs • GRT (Generic Run-Time) System • Object model, built after the architecture of dynamic languages (such as Objective-C) • Modules and scripting support

  6. Workbench Architecture • Modular Decomposition

  7. Workbench Architecture • Threading & Messaging Model

  8. Workbench Architecture • Modules and Scripting Support

  9. Workbench Architecture • GRT Object Model

  10. GRT Shell • Shell is command line interface to the Workbench internals • Uses LUA for Scripting • Supports single- and multi-line editing modes • Can be used for script debugging • Start using shell • Opening shell: Ctrl-F3 • Getting help: /> ? [subtopic-name] • To enter multi-line mode: Shift-Enter • To launch commands in multi-line mode: Ctrl-Enter

  11. GRT Lua Scripting and Libraries • Why LUA: • Fast • Light-weight • Portable • Easily-embeddable • LUA Standard Libraries Handle All Basic Functions • Runtime support • Strings, numbers, conversions, other utility • Data structure manipulation • Threading

  12. GRT Lua Modules & Plugins • Modules are loaded at Workbench startup and become globally visible • Use predefined source templates • Use Workbench scripting framework to create/edit/manage scripts • Use GRT Shell for debugging your code • You can re-use existing modules from your code

  13. GRT C++ Modules & Plugins • Use C++ for Implementing complex and/or computation-intensive modules • Use Workbench abstractions facilities for implementing platform-independent code • Implementing GUI • Windows: Use Windows Managed/Native Interop services for interfacing with GUI part • Linux: GUI is based GTKmm which is a C++ framework • Mac OS X: You can mix C++ and Objective-C code within the same source to implement COCOA-based GUI

More Related