CentOS7 install mysql


  • Install MySQL on CentOS 7

    Table of Contents

    Introduction

    MySQL is a popular open source relational database. The popularity of MySQL means there is an abundance of information online and well documented client libraries available.

    MySQL supports many common database features such as replication, partitioning, triggers, views, and stored procedures. A plugin storage architecture allows support for multiple storage engines.

    Requirements

    • Single server instance with external connectivity
    • CentOS 7 or Red Hat Enterprise Linux 7
    • MySQL 5.6

    Add the Repository

    Most Linux distributions will already provide the MySQL packages in the default distribution repository. The following steps will describe adding an official YUM repository provided by Oracle which will provide the latest version available.

    The YUM repository configuration can be downloaded from the MySQL website.

    http://dev.mysql.com/downloads/repo/yum/
    

    Choose the desired distribution (Red Hat Enterprise Linux 7 / Oracle Linux 7 for this tutorial) and click Download.

    The download link can be retrieved without registering for an Oracle account. Locate the No thanks, just start my download link and pass the link URL as a parameter to rpm.

    sudo rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
    

    Install MySQL Packages

    MySQL server can now be installed using YUM. The MySQL client package will be included with the server package.

    sudo yum -y install mysql-community-server
    

    Any required changes to MySQL configuration file, /etc/my.cnf, should be made after the install has completed.

    Start MySQL Server

    The MySQL daemon should be enabled to start on boot.

    sudo /usr/bin/systemctl enable mysqld
    

    The server can now be started.

    sudo /usr/bin/systemctl start mysqld
    

    Secure MySQL

    Once the MySQL server has started, the service will then need to be secured. The mysql_secure_installation script will assist with this process by presenting several questions. It is recommended to accept the default action for all questions which is yes.

    sudo /usr/bin/mysql_secure_installation
    
    • Set root password? [Y/n] Y
    • Remove anonymous users? [Y/n] Y
    • Disallow root login remotely? [Y/n] Y
    • Remove test database and access to it? [Y/n] Y
    • Reload privilege tables now? [Y/n] Y

    Firewall Rules

    It is highly recommended that the ProfitBricks firewall and/or local Linux firewall be used to restrict access to the MySQL server. Only hosts requiring connectivity to the MySQL server should be granted network access.

    MySQL listens on TCP port 3306 by default.

    If the CentOS firewall is enabled, then a rule allowing access to the MySQL server on port 3306/tcp from host192.0.2.10 can be added.

    firewall-cmd --permanent --zone=trusted --add-source=192.0.2.10/32
    firewall-cmd --permanent --zone=trusted --add-port=3306/tcp
    firewall-cmd  --reload
    

    Create Database User

    Never configure a web application to use the root user to access MySQL. An individual, application-specific user should be used instead. First log into MySQL with an administrative user.

    mysql -u root -p mysql
    

    The following steps will describe creating a new database named appdb and granting the appuser full access to the new database. Adjust the hostname from which the user will be connecting and password as necessary.

    mysql> create database appdb;
    mysql> grant all on appdb.* to 'appuser'@'localhost' identified by 'password';
    mysql> quit
    

    You should test access to the database with the new application user.

    mysql -u appuser -p -h localhost appdb
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值