MySQL Server
MySQL Database Service is a managed service and supports a variety of features.
Crash Recovery
MySQL Server supports crash recovery, which ensures durability and enables data recovery in the event of an unexpected server exit.
If any component of a standalone DB system fails while crash recovery is disabled, the DB system enters a
FAILED
state and is unrecoverable. It is
recommended to perform a full manual backup before disabling crash recovery. Highly
available DB systems in multi-availability domains are more failure resistant but in
certain circumstances, can also become unrecoverable.
Disabling crash recovery disables the following:
- InnoDB redo log
- Doublewrite buffer
- Binary log synchronization
If you disable crash recovery, you cannot use the following MySQL Database Service processes:
- Backups (manual and automatic)
- DB system stop and restart
It is not recommended to run a DB system without crash recovery except when performing large imports of data.
If crash recovery is disabled when a DB system upgrade operation begins, it is re-enabled for the duration of the upgrade process, and disabled again when the upgrade is finished. The same is true during a failover of a highly available DB system primary to secondary. When the promotion process is complete, crash recovery is disabled again.
Plugins and Components
Certain MySQL Server plugins and components are loaded in the DB system automatically. You do not need to install any of these plugins.
- MySQL Enterprise Thread Pool: The thread pool plugin provides an alternative thread-handling model designed to reduce overhead and improve performance. See MySQL Enterprise Thread Pool.
- The
connection_control
plugin: MySQL Server includes a plugin library that enables administrators to introduce an increasing delay in server response to connection attempts after a configurable number of consecutive failed attempts. The default value of the variables of theconnection-control
plugin are as follows, and you cannot change the default values:connection_control_failed_connections_threshold : 3
connection_control_max_connection_delay: 10000
connection_control_min_connection_delay:1000
- The
validate_password
component: The component serves to improve security by requiring account passwords and enabling strength testing of potential passwords. The default value of the variables of thevalidate_password
component are as follows, and you cannot change the default values:validate_password.check_user_name: ON
validate_password.length: 8
validate_password.mixed_case_count:1
validate_password.number_count:1
validate_password.policy: MEDIUM
validate_password.special_char_count :1
- Data masking: The general-purpose masking functions mask arbitrary strings, special-purpose masking functions mask specific types of values, and generate functions generate random values. See Data Masking.
Data Masking
MySQL Database Service supports various MySQL data masking functions that mask data to remove identifying characteristics and generate random data with specific characteristics.
MySQL Database Service supports the following data masking functions:
gen_range
gen_rnd_email
gen_rnd_ssn
gen_rnd_us_phone
mask_inner
mask_outer
mask_pan
mask_pan_relaxed
mask_ssn
MySQL Database Service does not support the following data masking functions:
gen_blocklist
gen_dictionary
gen_dictionary_drop
gen_dictionary_load
gen_rnd_pan
Related Topics
Reserved Usernames
Certain usernames are reserved and you cannot use them for the administrator username.
- administrator
- ociadmin
- ocirpl
- mysql.sys
- mysql.session
- mysql.infoschema
MySQL Server Versions
MySQL Database Service supports the two most recent release versions of MySQL.
MySQL Database Service currently supports the following versions:
- MySQL version 8.0.33: See Changes in MySQL 8.0.33.
- MySQL version 8.0.32: See Changes in MySQL 8.0.32.
Retrieving the Version of a MySQL Server
Retrieve the version of a MySQL Server. MySQL Database Service supports the two most recent release versions of MySQL.
Using a Command-Line Client
Use a command-line client such as MySQL Client or MySQL Shell to retrieve the version of a MySQL Server.
SELECT @@version;
+-----------------+
| @@version |
+-----------------+
| 8.0.27-u3-cloud |
+-----------------+
1 row in set (0.1687 sec)
8.0.27-u3-cloud is a MySQL Server version.
- First number: Specifies the major release number such as 8.
- Second number: Specifies the minor release number such as 0. The major and minor numbers together constitute the release series number. The series number describes the stable feature set.
- Third number: Specifies the version number within the release series such as 27. This is incremented for each new bugfix release.
- u*: Specifies the MySQL Database Service-specific update number such as u3. Fixes and feature development for the Oracle Cloud Infrastructure version of MySQL Server are delivered according to a different schedule to the on-premise version.
- cloud: Specifies that this version of MySQL server was built for use in MySQL Database Service only.
Default MySQL Privileges
Certain MySQL privileges are granted to the DB system administrator and
certain privileges are revoked from the mysql
and sys
schemas.
Related Topics
Listing Priviliges Using a Command-Line Client
Use a command-line client such as MySQL Client or MySQL Shell to list the privileges granted to a user.
Global Privileges Granted
Certain global MySQL privileges are granted to the DB system administrator.
Table 5-3 Global Privileges Granted
Global Dynamic Privileges Granted
Certain global dynamic MySQL privileges are granted to the DB system administrator.
Table 5-4 Global Dynamic Privileges Granted
Privileges Revoked from mysql Schema
Certain privileges are revoked from the mysql
schema. You
cannot grant these privileges to any DB system user.
Table 5-5 Privileges Revoked from mysql Schema
Privileges Revoked from mysql Schema | |
---|---|
INSERT |
UPDATE |
DELETE |
CREATE VIEW |
DROP |
REFERENCES |
INDEX |
ALTER |
CREATE TEMPORARY TABLES |
LOCK TABLES |
CREATE VIEW |
CREATE ROUTINE |
EXECUTE |
ALTER ROUTINE |
TRIGGER |
EVENT |
Related Topics
Privileges Revoked from sys Schema
Certain privileges are revoked from the sys
schema. You
cannot grant these privileges to any DB system user.
Table 5-6 Privileges Revoked from sys Schema
Privileges Revoked from sys Schema | |
---|---|
ALTER |
ALTER ROUTINE |
CREATE |
CREATE ROUTINE |
CREATE TEMPORARY TABLES |
CREATE VIEW |
DROP |
EVENT |
INDEX |
LOCK TABLES |
REFERENCES |
TRIGGER |
Related Topics
Unsupported Features
Certain features of MySQL Server are currently unsupported in MySQL Database Service.
- Authentication plugins. See Authentication Plugins.
- Client-Side Cleartext Pluggable Authentication
- PAM Pluggable Authentication
- Windows Pluggable Authentication
- LDAP Pluggable Authentication
- Kerberos Pluggable Authentication
- No-Login Pluggable Authentication
- Socket Peer-Credential Pluggable Authentication
- FIDO Pluggable Authentication
- Test Pluggable Authentication
- Pluggable Authentication System Variables
- Modification of system tables
- Binary log access
- Error logging to the system log. You can view error logs using the Performance Schema. See Viewing the Error Log.
- Group replication plugin
- InnoDB tablespace encryption
- Password strength plugin
- Setting global variables
- Persisted system variables. Use MySQL configurations instead. See Configuration of a DB System.
- Replication filters
- Semisynchronous replication
- Transportable tablespace
- Custom TLS certificates
- Granting privileges using
wildcards. You must use fully-qualified grants. By default,
the system variable
partial-revokes
is enabled and you cannot be disable it. As a result, wildcards are treated literally. See partial_revokes.