Skip to main content

Command Palette

Search for a command to run...

How to Install SQL on Amazon Linux

Updated
6 min read

Installing SQL on Amazon Linux can seem tricky if you're new to cloud environments or Linux servers. But don’t worry—I’ll guide you through the process step-by-step. Whether you want to install MySQL, MariaDB, or PostgreSQL, this article covers everything you need to get your SQL server up and running on Amazon Linux quickly and securely.

You’ll learn how to prepare your Amazon Linux instance, install the SQL database of your choice, and configure it for basic use. By the end, you’ll have a solid foundation to manage your SQL databases on Amazon Linux, whether for development, testing, or production purposes.

Understanding Amazon Linux and SQL Options

Amazon Linux is a Linux server operating system optimized for Amazon Web Services (AWS). It’s designed to provide a stable, secure, and high-performance environment for cloud applications. When you want to install SQL on Amazon Linux, you typically choose from popular open-source databases like MySQL, MariaDB, or PostgreSQL.

Here’s a quick overview of your main SQL options on Amazon Linux:

  • MySQL: One of the most widely used relational databases. It’s reliable and has strong community support.
  • MariaDB: A fork of MySQL, fully compatible but with additional features and performance improvements.
  • PostgreSQL: Known for advanced features, extensibility, and standards compliance.

Amazon Linux supports all these databases, but the installation steps differ slightly depending on your choice.

Preparing Your Amazon Linux Instance

Before installing SQL, you need to prepare your Amazon Linux instance. This involves updating your system and installing necessary tools.

  1. Connect to Your Instance
    Use SSH to connect to your Amazon Linux server. For example:

    ssh -i your-key.pem ec2-user@your-instance-ip
    
  2. Update Packages
    Run the following command to update all packages to their latest versions:

    sudo yum update -y
    
  3. Install Basic Utilities
    It’s helpful to have tools like wget and nano installed:

    sudo yum install -y wget nano
    

Updating your system ensures you have the latest security patches and software versions, which is crucial before installing any database software.

Installing MySQL on Amazon Linux

MySQL is a popular choice for many applications. Here’s how to install it on Amazon Linux:

  1. Install MySQL Server
    Amazon Linux uses yum as its package manager. Install MySQL with:

    sudo yum install -y mysql-server
    
  2. Start MySQL Service
    Enable and start the MySQL service to run on boot:

    sudo systemctl enable mysqld
    sudo systemctl start mysqld
    
  3. Check MySQL Status
    Confirm MySQL is running:

    sudo systemctl status mysqld
    
  4. Secure MySQL Installation
    Run the security script to set root password and remove insecure defaults:

    sudo mysql_secure_installation
    

    This script will prompt you to:

    • Set a root password
    • Remove anonymous users
    • Disallow root login remotely
    • Remove test databases
    • Reload privilege tables
  5. Log into MySQL
    Access the MySQL shell with:

    mysql -u root -p
    

Tips for MySQL on Amazon Linux

  • Use strong passwords for your root and user accounts.
  • Consider creating separate users with limited privileges for your applications.
  • Regularly back up your databases using tools like mysqldump.

Installing MariaDB on Amazon Linux

MariaDB is a drop-in replacement for MySQL with some extra features. Installing it is similar:

  1. Install MariaDB Server
    Use yum to install MariaDB:

    sudo yum install -y mariadb-server
    
  2. Start MariaDB Service
    Enable and start the service:

    sudo systemctl enable mariadb
    sudo systemctl start mariadb
    
  3. Secure MariaDB Installation
    Run the security setup script:

    sudo mysql_secure_installation
    
  4. Access MariaDB Shell
    Log in with:

    mysql -u root -p
    

MariaDB is fully compatible with MySQL commands and tools, so switching between them is easy.

Installing PostgreSQL on Amazon Linux

PostgreSQL is a powerful, open-source object-relational database system. Here’s how to install it:

  1. Install PostgreSQL Server
    Amazon Linux repositories include PostgreSQL. Install it with:

    sudo yum install -y postgresql-server postgresql-contrib
    
  2. Initialize the Database
    Before starting PostgreSQL, initialize the database cluster:

    sudo postgresql-setup initdb
    
  3. Start PostgreSQL Service
    Enable and start PostgreSQL:

    sudo systemctl enable postgresql
    sudo systemctl start postgresql
    
  4. Check PostgreSQL Status
    Verify it’s running:

    sudo systemctl status postgresql
    
  5. Set PostgreSQL Password
    Switch to the postgres user and set a password:

    sudo -i -u postgres
    psql
    \password postgres
    \q
    exit
    
  6. Configure Remote Access (Optional)
    If you want to connect remotely, edit /var/lib/pgsql/data/postgresql.conf and /var/lib/pgsql/data/pg_hba.conf to allow external connections.

PostgreSQL Notes

  • PostgreSQL uses roles instead of users, which can be more flexible.
  • It supports advanced data types and indexing options.
  • It’s a great choice for complex applications needing strong data integrity.

Configuring Firewall and Security Groups

After installing your SQL server, you need to ensure your instance’s firewall and AWS security groups allow the right traffic.

  • AWS Security Groups:

    • Open the port your SQL server uses (default ports: MySQL/MariaDB - 3306, PostgreSQL - 5432).
    • Restrict access to trusted IP addresses only.
  • Linux Firewall (firewalld or iptables):

    • Check if the firewall is active:
      sudo firewall-cmd --state
      
    • Open the SQL port if needed:
      sudo firewall-cmd --permanent --add-port=3306/tcp
      sudo firewall-cmd --reload
      

Proper firewall and security group configuration helps protect your database from unauthorized access.

Basic SQL Server Management Tips

Once your SQL server is installed, managing it efficiently is key. Here are some tips:

  • Regular Backups: Use tools like mysqldump for MySQL/MariaDB or pg_dump for PostgreSQL to back up your data regularly.
  • Monitor Performance: Use monitoring tools or AWS CloudWatch to track database performance and resource usage.
  • Update Software: Keep your SQL server updated to patch security vulnerabilities.
  • User Management: Create specific users with limited permissions for applications instead of using root or admin accounts.
  • Log Management: Enable and review logs to detect unusual activity or errors.

Troubleshooting Common Issues

Installing SQL on Amazon Linux is usually straightforward, but you might face some issues:

  • Service Won’t Start: Check logs in /var/log/mysqld.log or /var/lib/pgsql/data/pg_log/.
  • Connection Refused: Verify firewall and security group settings.
  • Authentication Errors: Double-check usernames, passwords, and host permissions.
  • Disk Space Issues: Ensure your instance has enough storage for databases.

If problems persist, AWS forums and official documentation are great resources.

Conclusion

Installing SQL on Amazon Linux is a manageable task once you understand the steps. Whether you choose MySQL, MariaDB, or PostgreSQL, the process involves preparing your server, installing the database software, securing it, and configuring access.

By following this guide, you’ll have a reliable SQL server running on Amazon Linux, ready to support your applications. Remember to keep security and backups in mind as you manage your databases. With these basics, you’re well on your way to mastering SQL on Amazon Linux.


FAQs

How do I choose between MySQL, MariaDB, and PostgreSQL on Amazon Linux?

Choose based on your needs: MySQL is widely supported, MariaDB offers extra features and performance, and PostgreSQL is best for advanced data handling and standards compliance.

Can I install multiple SQL servers on the same Amazon Linux instance?

Yes, but it requires careful port and resource management to avoid conflicts and ensure performance.

How do I secure my SQL server on Amazon Linux?

Use strong passwords, restrict access via AWS security groups and firewalls, run security scripts like mysql_secure_installation, and regularly update your software.

What is the default port for MySQL on Amazon Linux?

The default port for MySQL and MariaDB is 3306. PostgreSQL uses port 5432.

How do I back up my SQL databases on Amazon Linux?

Use mysqldump for MySQL/MariaDB or pg_dump for PostgreSQL to create backups. Schedule regular backups and store them securely.

More from this blog

L

LinuxBloke | Linux Tips, Tricks & Troubleshooting

672 posts