Ububtu 18.04 安裝 mysql 和 phpmyadmin 過程記錄

20191119 很久沒有在服務器上安裝 mysql 了,很多細節都已經忘記了!找出以前的紀錄,亦步亦趨的操作,還是會出現不一樣的情況!

所以,再次記錄一下本次過程!

1、打開自己以前的記錄

官網手冊
https://help.ubuntu.com/lts/serverguide/serverguide.pdf
從前的紀錄
https://blog.csdn.net/u010953609/article/details/88085218

2、第一步就遇到問題了

  1. $ sudo apt install mysql-server

    直接蹦出來一個錯誤
    E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
    E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

  2. 打開以上 2 個文件看看

    $ cd /var/lib/dpkg/

    /var/lib/dpkg$ ll
    -rw-r----- 1 root root 0 Nov 22 11:47 lock
    -rw-r----- 1 root root 0 Dec 14 2018 lock-frontend

    $ sudo cat lock
    $ sudo cat lock-frontend

    都是空的!
    說是有另一個 apt 在操作?我也沒有搞懂爲什麼!
    準備重複一次之後再重啓開看
    因爲這服務器很久沒有用,所以,應該先 update 看看

    $ sudo apt update
    $ sudo apt install mysql-server
    他自己就好了!
    難怪一般安裝什麼首先都 apt update!

  3. 以前就知道 Ubuntu 1804 安裝 mysql 之後沒有初始密碼的,所以這次特別留意(可惜當時專注操作設置密碼,沒有截圖保留!)
    記得中途要求設置管理員賬號和密碼,賬號還是選擇了 root ,設置密碼的時候有一個選擇密碼強度,我選擇了 strong (最強), 自然 123456 這種密碼是不能過關了!所以設置了一個 wwzzhhXXXXXXXX 一大串,當時也沒有注意就過去了!
    這個密碼問題爲後面 phpmyadmin 買了一個大坑!

2、 確認安裝結果

  1. sudo netstat -tap | grep mysql

     tcp        0      0 localhost.localdo:mysql 0.0.0.0:*               LISTEN      7132/mysqld 
    
  2. ps -ef |grep mysql

     mysql     7132     1  0 15:48 ?        00:00:00 /usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid
     dhbm      7252 26865  0 15:51 pts/2    00:00:00 grep --color=auto mysql
    
  3. dpkg -l |grep mysql

     ii  mysql-client-5.7                      5.7.28-0ubuntu0.18.04.4                    amd64        MySQL database client binaries
     ii  mysql-client-core-5.7                 5.7.28-0ubuntu0.18.04.4                    amd64        MySQL database core client binaries
     ii  mysql-common                          5.8+1.0.4                                  all          MySQL database common files, e.g. /etc/mysql/my.cnf
     ii  mysql-server                          5.7.28-0ubuntu0.18.04.4                    all          MySQL database server (metapackage depending on the latest version)
     ii  mysql-server-5.7                      5.7.28-0ubuntu0.18.04.4                    amd64        MySQL database server binaries and system database setup
     ii  mysql-server-core-5.7                 5.7.28-0ubuntu0.18.04.4                    amd64        MySQL database server binaries
     ii  php7.2-mysql                          7.2.24-0ubuntu0.18.04.1                    amd64        MySQL module for PHP
    
  4. which mysql

     /usr/bin/mysql
    

3、本地命令行確認

$ mysql -uroot
開始直接就可以的,沒有加 -p ,也沒有提示我需要輸入密碼的
後面在折騰 phpmyadmin 的時候,重設了 root 登錄的 plugin 方式
現在需要加上 -p

$ mysql -uroot -p

Enter password: 

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1023
Server version: 5.7.28-0ubuntu0.18.04.4 (Ubuntu)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

3、安裝 phpmyadmin

  1. 按照手冊操作
    sudo apt install phpmyadmin

操作過程中會提示選擇按照 Apache 、httpd 等方式自動識別,因爲我要使用 nginx ,所以一個都沒有選
實際內容是西崽到了 /etc/phpmyadmin
這個版本是 4.6 的

  1. 自行下載安裝 phpmyadmin 4.9
    官網下載地址
    https://www.phpmyadmin.net/files/
    現在最新版是 5.0.0-alpha1

    sudo wget https://files.phpmyadmin.net/phpMyAdmin/4.9.1/phpMyAdmin-4.9.1-all-languages.zip

修改配置

sudo cp config.sample.inc.php config.inc.php 
sudo vim config.inc.php

$cfg['blowfish_secret'] = 'wzh20191119'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
  1. 配置 nginx 網站
    這是第一次安裝的 4.6版的
    sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin

    第二次自己下載的就直接放在 /var/www 目錄下了,無需再軟連接

    設置 phpmyadmin 網站
    root /var/www/phpmyadmin49;

  2. 測試
    curl 127.0.0.1:999

    502 Bad Gateway

    502 Bad Gateway


    nginx/1.14.0 (Ubuntu)

    瀏覽器測試同樣出現 502 Bad Gateway

  3. 百度之後得知,root 賬戶的登錄 plugin 方式 auth_socket ,php 連接不上!

mysql> select user, plugin from mysql.user;

+------------------+-----------------------+
| user             | plugin                |
+------------------+-----------------------+
| root             | auth_socket           |
| mysql.session    | mysql_native_password |
| mysql.sys        | mysql_native_password |
| debian-sys-maint | mysql_native_password |
| pmauser          | mysql_native_password |
+------------------+-----------------------+
5 rows in set (0.00 sec)

mysql> update mysql.user set plugin=‘mysql_native_password’ where user=‘root’;

再次打開網站,可以了!

mysqli_real_connect(): (HY000/1045): Access denied for user ‘root’@‘localhost’ (using password: YES)

  1. root 密碼死活不對!
    當時安裝過程中特意 cp 並記錄了,不能錯的!
    安裝過程中,2 次輸入密碼都確認的!
    由於安裝 mysql 是選擇了密碼強度 strong ,所以,想到可能當時沒有大寫字母,所以衝色號再一次帶有大寫字母的密碼
    update mysql.user set authentication_string=PASSWORD(‘M…帶有大寫字母的密碼’) where user=‘root’;

使用新密碼就 ok 了!

到底是安裝過程中兩次密碼的時候他不認真確認,還是我當時沒有仔細看提示呢?

發佈了69 篇原創文章 · 獲贊 11 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章