What's installed on your MySQL server?
- MySQL 8.4 LTS Community from the official MySQL repository
- A utf8mb4 database called uygulama and a full-rights user called yonetici
- Classic protocol open on port 3306, with TLS using the self-signed certificate MySQL generates
- X Protocol (33060) reachable only from inside the server
- caching_sha2_password as the default authentication method
- Firewall with only ports 22 and 3306 open, plus fail2ban for SSH
What size do you need for MySQL?
The MySQL reference manual doesn't give a fixed RAM figure. The InnoDB buffer pool defaults to 128 MB, and the manual notes that servers running only MySQL often give it up to 80 percent of physical memory. As a rule of thumb, 1 GB works for trials and small databases, and 2 to 4 GB is a good start for an app in production. If it isn't enough, grow RAM, CPU and disk separately from your panel, and your data and IP address stay the same.
| Use | Size | Price | Choose |
|---|---|---|---|
| Starter | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mo | |
| Medium | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mo | |
| Powerful | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mo |
Who is it for?
- Anyone who needs a separate database server for software that requires MySQL
- Teams connecting PHP, Java, Python or Node.js apps to a remote MySQL
- Projects moving from MySQL 8.0 to the 8.4 LTS release
- Developers who want a separate database for development, testing or reports
What happens after you order?
- Set the size and complete your payment.
- Your server starts and MySQL installs itself. This took about 3 minutes in our real-server tests.
- When the App row on your panel's Overview tab says MySQL is ready, copy the Connection address, Login and Password rows.
- Connect with mysql -h IP -u yonetici -p uygulama. Add --ssl-mode=REQUIRED to insist on an encrypted connection.
- Create a separate user for your app with CREATE USER and grant it access to its own database only.
With every server
- Daily backups included in the price
- Unlimited traffic
- Full root access
- Scale RAM and CPU up or down later, and grow the disk
- Location: Istanbul · IST-1.
Good to know
- Port 3306 is open to the internet. To limit it to your address, run ufw delete allow 3306/tcp, then ufw allow from YOUR_IP to any port 3306.
- The InnoDB buffer pool stays at 128 MB when you scale up. Set innodb_buffer_pool_size in /etc/mysql/mysql.conf.d/seturack.cnf and run systemctl restart mysql.
- mysql_native_password is off by default in MySQL 8.4. If you use an older driver, try updating the driver first.
- The install follows the 8.4 LTS repository and won't move to a new major version by itself. You apply MySQL updates with apt.
- The server certificate is self-signed. To connect with the VERIFY_CA or VERIFY_IDENTITY modes, set up your own certificate.
MySQL questions and answers
How do I connect to a remote MySQL server?
Your panel shows the Connection address, Login and Password. From the command line, run mysql -h IP -u yonetici -p uygulama. In tools such as MySQL Workbench, enter the IP address as the host, 3306 as the port and yonetici as the user.
How much RAM does MySQL need?
MySQL has no official minimum RAM figure. As a rule of thumb, 1 GB is a good start for a small database and 2 to 4 GB for an app in production. When you add memory, raise innodb_buffer_pool_size as well, or the buffer pool stays at 128 MB.
How do I fix a caching_sha2_password error?
This is the default authentication method in MySQL 8.4, so update your driver first. If you must keep an old driver, add mysql_native_password=ON to the mysqld section of the settings file, restart MySQL and switch that user over with ALTER USER.
Can I move a MySQL 5.7 or 8.0 database here?
Moving from 8.0 to 8.4 is officially supported, so you can take a dump with mysqldump and load it. 5.7 can't go straight to 8.4, because MySQL requires upgrading to 8.0 first.
Is my MySQL connection encrypted?
MySQL clients try TLS first by default, and the server answers with its self-signed certificate. Use --ssl-mode=REQUIRED so a client can't fall back to a plain connection. To confirm encryption, run SHOW SESSION STATUS LIKE 'Ssl_cipher'.
How do I back up MySQL?
Your server is backed up every night, the last 7 days are kept, and this is included in the price. For logical backups, use mysqldump --single-transaction, which takes a consistent dump without locking InnoDB tables.