linux下安裝mysql5.7

這是我在騰訊雲上安裝mysql的一些記錄node

系統版本:CentOS Linux release 7.4.1708 (Core)mysql

mysql版本:mysql-5.7.25-linux-glibc2.12linux

1、安裝前:sql

  1.1 檢查linux系統版本:[root@VM_0_14_centos ~]#  cat /etc/system-release數據庫

  1.2 檢查是否安裝了mysql:[root@VM_0_14_centos ~]# rpm -qa | grep mysql  (我機子安裝了mysql後再執行該命令,仍是什麼都沒找到。。。)vim

    卸載已安裝的mysql:[root@VM_0_14_centos ~]# rpm -e --nodeps mysqlcentos

2、下載、安裝mysql微信

  2.1 軟件來源:socket

    [root@VM_0_14_centos ~]#  wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz 編碼

    或者:連接:https://pan.baidu.com/s/17CyWUAL3cKJ8WK-haFiGtA    提取碼:pv68 

  2.2 解壓安裝包、重命名爲mysql並將其移動至/usr/local/mysql

        

  2.3 添加系統用戶

    添加 mysql 組和 mysql 用戶:

      添加 mysql 組:[root@VM_0_14_centos ~]# groupadd mysql

      添加 mysql 用戶:[root@VM_0_14_centos ~]# useradd -r -g mysql mysql

      擴展:

        查看是否存在 mysql 組:[root@VM_0_14_centos ~]# more /etc/roup | grep mysql

        查看 msyql 屬於哪一個組:[root@VM_0_14_centos ~]# groups mysql

        查看當前活躍的用戶列表:[root@VM_0_14_centos ~]# w

  2.3 檢查是否安裝libaio

    [root@VM_0_14_centos ~]# rpm -qa | grep libaio

    若沒有則安裝

      版本檢查:[root@VM_0_14_centos ~]# yum search libaio

      安裝:[root@VM_0_14_centos ~]# yum -y install libaio

  2.4 安裝mysql

    建立mysql配置文件:

      建立/etc/my.cnf 並將並寫入配置文件:

      [mysql]
      # 設置mysql客戶端默認字符集
      default-character-set=utf8
      socket=/usr/local/mysql/mysql.sock
      [mysqld]
      #skip-name-resolve
      #設置3306端口
      port = 3306
      socket=/usr/local/mysql/mysql.sock
      # 設置mysql的安裝目錄
      basedir=/usr/local/mysql
      # 設置mysql數據庫的數據的存放目錄
      datadir=/usr/local/mysql/data
      # 容許最大鏈接數
      max_connections=200
      # 服務端使用的字符集默認爲8比特編碼的latin1字符集
      character-set-server=utf8
      # 建立新表時將使用的默認存儲引擎
      default-storage-engine=INNODB
      #lower_case_table_name=1
      max_allowed_packet=16M

    在/usr/local/mysql 文件夾內建立data文件夾,用來存放數據

    修改當前目錄擁有者爲 mysql 用戶:[root@VM_0_14_centos ~]# chown -R mysql:mysql ./

    初始化:[root@VM_0_14_centos mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

    初始化後,系統會自動爲mysqlroot用戶賦予一個臨時密碼:紅圈中就是,必定要記住,第一次登陸後要用的 

3、配置

  4.1 設置開機啓動 

    a. 複製啓動腳本到資源目錄:[root@VM_0_14_centos mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

    b. 增長 mysqld 服務控制腳本執行權限:[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

    c. 將 mysqld 服務加入到系統服務:[root@localhost mysql]# chkconfig --add mysqld

    d. 檢查mysqld服務是否已經生效:[root@localhost mysql]# chkconfig --list mysqld

      命令輸出相似下面的結果:

        mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off 

      代表mysqld服務已經生效,在二、三、四、5運行級別隨系統啓動而自動啓動,之後可使用 service 命令控制 mysql 的啓動和中止。

      查看啓動項:chkconfig --list | grep -i mysql

      刪除啓動項:chkconfig --del mysql

    e. 啓動 mysqld:[root@localhost mysql]# service mysqld start

    報錯:

       解決:socket 沒找到,八成是/etc/my.cnf中sock配置得有問題, 這樣配:socket=/usr/local/mysql/mysql.sock

       配置文件改完後再次啓動mysql:service mysqld start 就OK了

    在登陸mysql時再次報錯:

      

      執行登陸命令時,系統默認會查找/usr/bin下的命令,若是這個命令不在這個目錄下,固然會找不到命令,咱們須要作的就是映射一個連接到/usr/bin目錄下。

      這個是由於/usr/local/bin目錄下缺失mysql致使,只須要一下方法創建軟連接,便可以解決:

         把mysql安裝目錄,好比/usr/local/mysql/bin/mysql,映射到/usr/bin目錄下:

        

     而後再登陸mysql,又報錯:

     

     找不到套接字了,首先要知道這個mysql.sock是幹嗎的: 

      鏈接localhost一般經過一個Unix域套接字文件進行,通常是/tmp/mysql.sock。若是套接字文件被刪除了,本地客戶就不能鏈接。這可能發生在你的系統運行一個cron任務刪除了/tmp下的臨時文件。

     解決:先執行:[root@VM_0_14_centos ~]# find / -name mysql.sock

     若是能夠查找到, 作個軟鏈接就行了

     [root@VM_0_14_centos tmp]# ln -s /usr/local/mysql/mysql.sock /tmp/mysql.sock

  4.2 配置環境變量:

    vim /etc/profile

    加上這一句:export PATH = $PATH:/usr/local/mysql/bin

  4.3 更改密碼、配置容許外網鏈接:

     這時就能夠登上去了,可是登錄後沒法進行任何操做,且外網也沒法鏈接到該mysql:

    改密碼三步:

      1: SET PASSWORD = PASSWORD('your new password');

       2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

       3: flush privileges;

    設置外網可連:

    

END!

想了解更多Python關於爬蟲、數據分析的內容,歡迎你們關注個人微信公衆號:悟道Python

  

相關文章
相關標籤/搜索