Beginners Guide to MySQL Tools
Oracle Corporation provides tools for administering and otherwise working with the MySQL Server.
1. MySQL Workbench: A next-generation visual database design application that can be used to efficiently design, manage, and document database schemata. It is available in both open-source and commercial editions. 2. MySQL Proxy: A simple program that sits between your client and MySQL server(s) that can monitor, analyze, or transform their communication. MySQL Proxy’s flexibility allows for a wide variety of uses, including load balancing, failover, query analysis, query filtering and modification, and many more. Currently, it is not production-ready.
The following tools are available only in select MySQL Commercial Editions:
1. MySQL Enterprise Monitor: A visual enterprise-monitoring system for MySQL that observes your MySQL servers, notifies you of potential issues and problems, and advises you how to fix the issues. 2. MySQL Enterprise Backup: Enables you to perform online “hot,” non-blocking backups, restores your data from a full backup, and supports creating compressed backup files. 3. MySQL Cluster Manager: Simplifies the creation and management of the MySQL Cluster Carrier Grade Edition database by automating common management tasks.
MySQL Enterprise Monitor
Enterprise Monitor helps you manage more MySQL servers in a multinode (horizontally scaled) environment, tune your current MySQL servers, and find and fix problems with your MySQL database applications before they can become serious problems or costly outages. This web GUI application proactively monitors enterprise database environments and provides expert advice on how MySQL can tighten security, optimize performance, and reduce the downtime of MySQL-powered systems. Enterprise Monitor monitors all kinds of configurations, from a single MySQL server all the way up to a huge farm of MySQL servers powering a busy website.
- Enterprise Dashboard - “At-a-glance” monitoring
- Server/group management
- MySQL and custom advisors and rules
- Advisor rule scheduler
- Customizable thresholds and alerts
- Events and alert history
- Replication Monitor
- Query Analyzer
MySQL Workbench provides DBAs and developers with a GUI-based, cross-platform, integrated-tools environment for three primary functions.
1. SQL Development facilitates the following tasks:
- Edit and execute SQL queries and scripts.
- Create or alter database objects.
- Edit table data.
2. Database Design and Modeling facilitates the following tasks:
- Perform enhanced entity relationship (EER) modeling.
- Edit and execute SQL queries and scripts.
- Design, generate, and manage databases.
3. Server Administration (replaces MySQL Administrator) facilitates the following tasks:
- Start and stop the server.
- Edit database server configuration.
- Manage users.
- Import and export data.
MySQL Workbench: Access
MySQL Workbench is offered in two versions: 1. Community Edition(OSS) offers the following features:
- Foundation of all Workbench editions
- Full-featured, powerful database management tool
- Open-source GPL (GNU General Public License) available at no charge from our website
2. Standard Edition(SE) offers the following features:
- Commercial extension of OSS version
- Advanced features
- Available for purchase from the website
MySQL Proxy connects over the network by using the MySQL network protocol and provides communication between one or more MySQL servers and one or more MySQL clients. In the most basic MySQL Proxy configuration, you can:
- Simply pass queries from the clients to the MySQL server and back
- Use it without modification with any MySQL-compatible client that uses the protocol. This includes the mysql command-line client, any clients that uses the MySQL client libraries, and any connector that supports the MySQL network protocol.
In addition to the basic pass-through configuration, you can also use MySQL Proxy to:
- Monitor and alter the communication between the client and the server
- Use query interception to add profiling, insert additional queries, and remove the additional results. Interception of the exchanges is scriptable.
The proxy enables you to perform additional monitoring, filtering, or manipulation of queries without requiring you to make any modifications to the client and without the client even being aware that it is communicating with anything but a genuine MySQL server.
MySQL Connectors are application programming interfaces (APIs), also known as “database drivers”. MySQL Connectors are compatible with industry standards ODBC and JDBC and are available for Linux and Windows.
Any system that works with ODBC or JDBC can use MySQL.
- Connector/ODBC:Standardized database driver for Linux, Windows, Mac OS X, and UNIX platforms
- Connector/J:Standardized database driver for Java platforms and development
- Connector/Net:Standardized database driver for .NET platforms and development
- Connector/Python:Standardized database driver for Python applications
- Connector/C++:Standardized database driver for C++ development
- Connector/C(libmysql):Client library for C development
- MySQL Connector for OpenOffice:Driver for OpenOffice.org 3.1 (or later releases)
Multiple PHP extensions and APIs are supported:
- MySQL extension (uses libmysql)
- **mysqli **extension (can use libmysql or mysqlnd)
- **MySQL **support for PDO (can use libmysql or mysqlnd)
- **mysqlnd **:The MySQL native driver for PHP is an additional, alternative way to connect from PHP 5.3 (or later) to the MySQL Server 4.1 (or later).
Most of the third-party APIs are based on the C client library and provide a binding for some other language. Some natively implement the mysql client protocol. Although members of the MySQL development team often work closely with the developers of these products, the APIs do not receive official support from Oracle. Contact the developers to determine whether future support is available for APIs that are not currently supported by Oracle.
The biggest concern with migrating APIs is to ensure that the request you send to the server (through the API) is formatted correctly for the server version that is being used.