Roy-Try-Catch
← Back to list

【Mysql】Phpmyadmin部署於Ubuntu

Roy • Updated 2026-10-15 15:38:43

更新提醒(2026-10):本文寫於 2021 年,Nginx 設定中的 PHP-FPM socket 路徑是 php7.4-fpm.sock。PHP 7.4 已結束官方支援,若你安裝的是其他 PHP 版本,請把路徑改成對應版本。另外 phpMyAdmin 公開在網路上有被掃描攻擊的風險,建議加上存取限制,或參考站內較新的 【資安】Cloudflare Access 實戰:不用 VPN 保護後台與 Grafana 的作法。

本篇介紹如何在 Ubuntu Linux 環境中,安裝 phpMyAdmin 套件,並透過網頁顯示。

# 更新系統套件
sudo apt update
# 安裝phpmyadmin
sudo apt install phpmyadmin

設定軟連結

sudo ln -s /usr/share/phpmyadmin {phpmyadmin_path}

設定 Nginx

Ubuntu 預設的 Nginx 設定目錄為 /etc/nginx。

建立 sites-available 的 phpmyadmin.conf

server {
    listen 80;
    listen [::]:80;

    # 網頁目錄
    root /var/www/phpmyadmin;

    # 伺服器名稱
    server_name {your_domain};

    location / {
        try_files $uri/index.php?$query_string;
        root /var/www/phpmyadmin;
        index index.php index.html;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    error_page 403 404 /404.html;
    location = /40x.html{

    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    }

    #301永久轉址(443),轉址時,改變Request Method為GET,無法保留POST資料
    #return 301 https://$host$request_uri;
    #308永久轉址,轉址時,不改變Request Method,能保留POST資料
    #return 308 https://$host$request_uri;

}

設定完 .conf 之後,利用軟連結(ln)連結到 sites-enabled:

# 進入/etc/nginx/sites-enabled
cd /etc/nginx/sites-enabled
# 設定軟連結
sudo ln -s ../sites-available/phpmyadmin.conf

設定完成後重新載入 Nginx

# 重新啟動Nginx
sudo nginx -s reload

新增一位資料庫使用者並授予資料庫權限

# 建立一般使用者帳號
CREATE USER `user`@`localhost` IDENTIFIED BY 'yourpassword';

# 設定帳號權限
GRANT ALL ON laravel.* TO `user`@`localhost`;

# 讓設定生效
FLUSH PRIVILEGES;

或者建立擁有全域權限的超級管理員

# 建立一般使用者帳號
CREATE USER `user`@`%` IDENTIFIED BY 'yourpassword';

# 設定帳號權限
GRANT ALL PRIVILEGES ON *.* TO 'user';

# 讓設定生效
FLUSH PRIVILEGES;

延伸閱讀

Comments

No comments yet.

請先登入