Deze pagina is nog niet beschikbaar in uw eigen taal. We werken er hard aan om meer taalversies toe te voegen. Bedankt voor uw steun.
- What's New
- Function Overview
- Service Overview
- Getting Started
-
User Guide
- Usage Rules
- Billing Management
- Data Migration
- Instance Lifecycle Management
- Instance Modifications
- Read Replicas
- Database Management
- Account Management (Non-Administrator)
- Data Security
- Data Backups
- Data Restorations
- Connection Management
-
Parameter Template Management
- Creating a Parameter Template
- Modifying a Parameter Template
- Exporting Parameters
- Comparing Parameter Templates
- Viewing Parameter Change History
- Replicating a Parameter Template
- Resetting a Parameter Template
- Applying a Parameter Template
- Viewing Application Records of a Parameter Template
- Editing a Parameter Template Description
- Deleting a Parameter Template
- Metrics and Alarms
- Interconnection with CTS
- Log Management
- Task Center
- Managing Tags
- Managing Quotas
- Change History
- Best Practices
- Performance White Paper
- Security White Paper
- SDK Reference
-
API Reference
- Before You Start
- API Overview
- Calling APIs
-
APIs (Recommended)
- DB Engine Version Queries
- Database Specification Queries
-
Instance Management
- Creating a DB Instance
- Querying DB Instances
- Rebooting a DB Instance
- Deleting a DB Instance
- Querying Details of a DB Instance
- Querying Details of DB Instances in Batches
- Creating a Read Replica
- Deleting a Read Replica
- Scaling up Storage of a Yearly/Monthly DB Instance
- Changing a DB Instance Name
- Resetting a Database Password
- Changing DB Instance Specifications
- Querying Dedicated Resource Pools
- Querying Dedicated Resources
- Configuring the Monitoring By Seconds Function
- Querying the Configuration of Monitoring by Seconds
- Enabling or Disabling SSL
- Binding an EIP
- Unbinding an EIP
- Promoting a Read Replica to Primary
- Changing a Maintenance Window
- Modifying a Security Group
- Changing a Private IP Address
- Changing a Database Port
- Changing a DB Instance Description
- Backup Management
- Parameter Template Management
- Quota Management
- Log Management
- Tag Management
- Database User Management
- Database Management
- SQL Statement Concurrency Control
- Task Center
- APIs (Unavailable Soon)
- Permissions Policies and Supported Actions
- Appendix
- Change History
-
FAQs
- Product Consulting
-
Database Connections
- Can an External Server Access the GaussDB(for MySQL) Database?
- What Do I Do If the Number of GaussDB(for MySQL) Database Connections Reaches the Upper Limit?
- What Is the Maximum Number of Connections to a GaussDB(for MySQL) Instance?
- What Should I Do If an ECS Cannot Connect to a GaussDB(for MySQL) Instance?
- How Can I Connect to a MySQL Database Through JDBC?
- How Can I Create and Connect to an ECS?
- What Should I Do If a Database Client Problem Causes a Connection Failure?
- Why Cannot I Ping My EIP After It Is Bound to a DB Instance?
- What Can I Do If the Connection Test Failed?
- Can I Access a GaussDB(for MySQL) Instance over an Intranet Connection Across Regions?
- Are There Any Potential Risks If There Are Too Many Connections to a GaussDB(for MySQL) Instance?
- What Should I Do If an ECS and a GaussDB(for MySQL) instance Deployed in Different VPCs Cannot Communicate with Each Other?
- How Do I View All IP Addresses Connected to a Database?
- Client Installation
- Database Migration
- Database Permissions
-
Database Performance
- What Should I Do If the CPU Usage of My Instance Is High?
- How Do I Handle Slow SQL Statements Caused by Inappropriate Composite Index Settings?
- How Do I Handle a Large Number of Temporary Tables Being Generated for Long Transactions and High Memory Usage?
- What Should I Do If Locks on Long Transactions Block the Execution of Subsequent Transactions?
- Database Usage
- Backups
-
Database Parameter Modification
- How Can I Change the Time Zone?
- How Do I Configure a Password Expiration Policy for GaussDB(for MySQL) Instances?
- How Do I Ensure that the Database Character Set of a GaussDB(for MySQL) Instance Is Correct?
- How Do I Use the utf8mb4 Character Set to Store Emojis in a GaussDB(for MySQL) Instance?
- How Do I Set Case Sensitivity for GaussDB(for MySQL) Table Names?
- Can I Use SQL Commands to Modify Global Parameters?
-
Network Security
- What Security Assurance Measures Does GaussDB(for MySQL) Have?
- How Can I Prevent Untrusted Source IP Addresses from Accessing GaussDB(for MySQL)?
- How Do I Configure a Security Group to Enable Access to a GaussDB(for MySQL) Instance?
- How Can I Import the Root Certificate to a Windows or Linux Server?
- How Do I Manage and Ensure GaussDB(for MySQL) Security?
- Log Management
- Version Upgrade
- Change History
-
Troubleshooting
-
Backup and Restoration Issues
- Insufficient Permissions During Data Export Using mysqldump
- How Do I use mysqlbinlog to Obtain Binlog Files?
- Canal Fails to Parse Binlogs
- Precautions for Exporting Large Tables Through mysqldump
- Commands for Exporting Data Through mysqldump
- System Inaccessible After Field Addition to a Database Table
- SQL Statements Such as SET @@SESSION.SQL_LOG_BIN Displayed After You Run mysqldump
- Insufficient Permissions Reported for Canal
-
Connection Issues
- Login Failed After ssl_type of root Is Changed to ANY
- Failed to Connect to a DB Instance Using SSL
- Description of Each IP Address
- SSL Connection Failed Due to Inconsistent TLS Versions
- Error Message "connection established slowly"
- "Access denied" Displayed During Database Connection
- Failed to Connect to a Database Using mariadb-connector in SSL Mode
- Failed to Connect to a Database as User root
- Client Automatically Disconnected from a DB Instance
- Disconnection Occurs Every 45 Days Due to the istio-citadel Certificate Mechanism
-
SQL Issues
- Invalid TIMESTAMP Default Value during Table Creation
- Failed to Change the VARCHAR Length Due to the Index Length Limit
- Slow SQL Queries After a Large Amount of Data Is Deleted from a Large Table
- Error 1366 Reported When Data Containing Emojis Is Updated
- Slow Stored Procedure Execution Due to Inconsistent Collations
- ERROR [1412] Reported for a DB Instance
- Failed to Delete a Table with a Foreign Key
- Incorrect GROUP_CONCAT Results
- Error Message "Too many keys specified" Displayed When a Secondary Index Is Created
- DISTINCT and GROUP BY Optimization
- Equivalent Comparison Failures with Floating-Point Numbers
- Tablespace Bloat
- ERROR 1396 Reported When a User Is Created
- Error Message Reported When alter table xxx discard/import tablespace Is Executed
- Native Error 1461 Reported by a DB Instance
- "Row size too large" Reported When a Table Failed to Be Created
- Parameter-related Issues
- Performance Issues
-
Basic Issues
- How Do I View Used Storage of My GaussDB(for MySQL) Instance?
- Renaming Databases and Tables
- Character Set and Collation Settings
- Auto-Increment Field Value Jump
- Starting Value and Increment of AUTO_INCREMENT
- Changing the AUTO_INCREMENT Value of a Table
- Failed to Insert Data Because Values for the Auto-increment Primary Key Field Reach the Upper Limit
- Auto-increment Field Values
- AUTO_INCREMENT Not Displayed in the Table Structure
- Impact of Creating an Empty Username
- No Scanned Rows Recorded in Slow Query Logs
- Change History
-
Backup and Restoration Issues
- Videos
Overview
This practice describes how to install a MySQL database (community edition) on a Huawei Cloud ECS and create a GaussDB(for MySQL) instance, and use DRS to migrate data from MySQL to GaussDB(for MySQL). With DRS, you can perform real-time migration tasks with minimal downtime. Services and databases remain operational during a migration.
Scenarios
- With the rapid increase of enterprise workloads, traditional databases have poor scalability and require distributed reconstruction.
- Building traditional databases requires purchasing and installing servers, systems, databases, and other software. Its O&M is expensive and difficult.
- Traditional databases are poor in complex queries.
- It is hard for traditional databases to smoothly migrate data without interrupting services.
Prerequisites
- You have completed real-name authentication.
- Your account balance is at least $0 USD.
Solution Architecture
In this example, the source database is a MySQL instance on the ECS and the destination database is a GaussDB(for MySQL) instance. Figure 1 shows the deployment architecture when the ECS-hosted MySQL and GaussDB(for MySQL) instances are in the same VPC.
If the ECS-hosted MySQL and GaussDB(for MySQL) instances are not in the same VPC, you need to configure a VPC peering connection between the two VPCs. For details about the deployment architecture, see Figure 2.
GaussDB(for MySQL) Advantages
- Robust Performance: GaussDB(for MySQL) decouples storage and compute and uses a "log as database" architecture and remote direct memory access (RDMA) to deliver seven times the performance of open-source MySQL.
- Elastic Scaling: In addition to a primary node, you can add up to 15 read replicas for a DB instance within minutes. You can also scale up or down CPU and memory specifications for a DB instance as needed.
- High Reliability: DB instances can be deployed across AZs and there are three data copies under the shared distributed storage layer. A DB instance failover can be complete within seconds with a zero RPO.
- High Security: With shared distributed storage, GaussDB(for MySQL) ensures zero data loss and service recovery within seconds. VPCs, security groups, SSL connections, and data encryption are used to strictly control secure access.
- High Compatibility: GaussDB(for MySQL) is fully compatible with MySQL. You can easily migrate your MySQL databases to GaussDB(for MySQL) without reconstructing existing applications and without sharding.
- Mass Storage: With distributed DFV storage, GaussDB(for MySQL) automatically grows storage as needed, up to 128 TB per DB instance.
Service List
- Virtual Private Cloud (VPC)
- Elastic Cloud Server (ECS)
- GaussDB(for MySQL)
- Data Replication Service (DRS)
Notes on Usage
The resources and test data in this practice are for demonstration only. Adjust them as needed.
For more information about GaussDB(for MySQL) data migration, see From MySQL to GaussDB(for MySQL).
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.