1. 程式人生 > 其它 >記錄 Linux CentOS安裝配置MySQL資料庫

記錄 Linux CentOS安裝配置MySQL資料庫

今天在虛擬機器安裝mysql ,想玩玩結果踩坑了,所以記錄一下哈哈哈

1.在安裝mysql

  • 下載mysql源安裝包
    wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35-linux2.6-x86_64.tar.gz
  • 解壓 安裝mysql

tar -xvfmysql-5.6.35-linux2.6-x86_64.tar.gz

    mvmysql-5.6.35-linux2.6-x86_64 /usr/local/mysql

  • 新建使用者/目錄及許可權修改

groupadd mysql

useradd -r -g mysql mysql

mkdir -p /data/mysql

chown mysql:mysql -R /data/mysql

2.配置及登入

  • 配置my.cnf

vim /etc/my.cnf

配置內容:

  basedir=/usr/local/mysql

  datadir=/usr/local/mysql/data

  port=3306

  socket = /tmp/mysql.sock

  character-set-server = utf8

  skip-name-resolve

  log-err = /usr/local/mysql/data/error.log

  pid-file = /usr/local/mysql/data/mysql.pid

  • 初始化資料庫

cd /usr/local/mysql/bin/

  ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --user=mysql --initialize

  • 將mysql.server放置到/etc/init.d/mysql中(注意init.d是連線檔案

  cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

  • 啟動mysql服務

  service mysql start

  ps -ef|grep mysql

由於我已啟了服務 我只是檢視一下狀態,mysql服務是running狀態

  • 登入mysql資料庫

    mysql -u root -p

    輸入密碼登入

    

3.外部連線

安裝連線庫的客戶端,然後連線資料庫

  • 先ping一下 是否能通,一般都是通的

  • telent ip port 看看是否可以通,若無法連線檢視防火牆配置(我自己使用的iptables)

   因為centos7預設的防火牆是firewalld防火牆,不是使用iptables

   因此禁用firewalld服務,或者乾脆使用預設的firewalld防火牆。

  • 禁用firewalld防火牆

   systemctl stop firewalld

systemctl mask firewalld

  • 使用iptables服務:

#開放443埠(HTTPS)

iptables -A INPUT -p tcp --dport 443 -j ACCEPT

   #儲存上述規則

   service iptables save

   #開啟服務

  systemctl restart iptables.service

  • 配置iptables 檔案

-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT

儲存後重啟reboot

再次連線成功