首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

Linux MySQL 安裝報錯 Could not find ./bin/my_print_defaults 解決方案

     編輯:MySQL 綜合教學

錯誤現象

FATAL ERROR: Could not find ./bin/my_print_defaults
If you are using a binary release, you must run this script from
within the directory the archive extracted into.
If you compiled MySQL yourself you must run 'make install' first.

根因

執行 `mysql_install_db` 時未指定 `--basedir`,腳本無法定位安裝根目錄下的 `bin/my_print_defaults` 工具。

標準修復命令

/usr/local/mysql/scripts/mysql_install_db \
  --user=mysql \
  --basedir=/usr/local/mysql \
  --datadir=/usr/local/mysql/data

關鍵參數**:

  • `--basedir`:MySQL 安裝根目錄 (含 `bin/` `share/` `scripts/`)。
  • `--datadir`:數據文件存放目錄。
  • `--user`:運行進程的系統用戶。

完整安裝流程補充

  1. 建立用戶組/用戶:`groupadd mysql && useradd -r -g mysql -s /bin/false mysql`
  2. 解壓二進制包:`tar xf mysql-VERSION-linux-glibc2.12-x86_64.tar.gz -C /usr/local/`
  3. 建立軟連結:`ln -s /usr/local/mysql-VERSION /usr/local/mysql`
  4. 初始化數據目錄 (上述修復命令)
  5. 授權目錄:`chown -R mysql:mysql /usr/local/mysql /usr/local/mysql/data`
  6. 複製配置檔:`cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf`
  7. 啟動服務:`/usr/local/mysql/support-files/mysql.server start`
  8. 設定開機自啟:`cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld && chkconfig --add mysqld`

常見坑點

  • 忘記 `--basedir` 導致找不到 `my_print_defaults`、`fill_help_tables.sql` 等腳本依賴文件。
  • `datadir` 目錄已存在舊數據未清理,導致初始化失敗。
  • SELinux 阻擋 `mysqld` 寫入 `datadir`,需 `restorecon -Rv /usr/local/mysql/data` 或暫時 `setenforce 0`。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved