首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

Linux下使用RPM包安裝、配置與卸載MySQL完整指南

     編輯:PHP 相關知識

在企業級Linux服務器環境中,使用RPM包管理MySQL安裝是標準化運維的基礎技能。本文以MySQL 4.0.14為例,詳細記錄從包安裝、服務管理、配置文件部署到完全卸載的全流程操作,適用於RHEL、CentOS、Fedora等基於RPM的發行版。

一、RPM包安裝MySQL服務端

1. 安裝執行

cd /data
rpm -ivh MySQL-server-4.0.14-0.i386.rpm

安裝完成後自動執行的操作:

  • 創建系統用戶mysql與組mysql
  • 初始化數據目錄/var/lib/mysql(含mysql系統庫、test庫)
  • 註冊系統服務mysql(System V init腳本位於/etc/init.d/mysql)
  • 部署示例配置文件至/usr/share/mysql/(my-huge.cnf、my-large.cnf、my-medium.cnf、my-small.cnf)

2. 部署生產配置文件

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

根據服務器內存選擇模板:

  • my-small.cnf:< 64MB內存
  • my-medium.cnf:128MB-512MB內存
  • my-large.cnf:512MB-1GB內存
  • my-huge.cnf:> 1GB內存

二、服務管理與驗證

1. 服務控制命令

# 啟動服務(兩種等效方式)
/etc/init.d/mysql start
service mysql start

# 停止服務
/etc/init.d/mysql stop
service mysql stop

# 重啟服務
service mysql restart

# 設置開機自啟
chkconfig mysql on

2. 連接測試

mysql -u root -p
# 首次登錄無密碼,直接回車進入
# 建議立即設置root密碼:
mysqladmin -u root password 'new_password'

三、安裝MySQL客戶端工具

rpm -ivh MySQL-client-4.0.14-0.i386.rpm

客戶端安裝後提供以下核心工具(位於/usr/bin/):

  • mysql:命令行客戶端
  • mysqladmin:管理工具
  • mysqldump:備份導出
  • mysqlimport:數據導入
  • mysqlshow:庫表結構查看

四、目錄結構與關鍵文件說明

路徑用途備註
/usr/bin/mysql*客戶端工具程序用戶態命令
/usr/sbin/mysqld服務端守護進程核心二進制文件
/var/lib/mysql數據目錄含庫文件、日志、pid文件
/etc/my.cnf主配置文件全局配置入口
/usr/share/mysql/共享資源字符集、錯誤信息、示例配置
/etc/init.d/mysql服務管理腳本System V兼容

五、配置文件優化實例

編輯/etc/my.cnf,常見優化項:

[mysqld]
# 基礎設置
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock
port = 3306
character_set_server = utf8
default_storage_engine = InnoDB

# 日志分離(建議生產環境配置)
[mysqld_safe]
log-error = /var/log/mysqld.log
pid-file = /var/run/mysqld/mysqld.pid

# 慢查詢日志
slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 2

# 二進制日志(主從複製必需)
log-bin = /var/log/mysql/binlog
server-id = 1
expire_logs_days = 7
max_binlog_size = 100M

修改配置後需重啟服務生效:service mysql restart

六、數據庫初始化與修復

若誤刪/var/lib/mysql導致系統庫丟失,可使用初始化工具:

/usr/bin/mysql_install_db --user=mysql --datadir=/var/lib/mysql

此命令將重建mysql系統庫(含授權表)、test庫及必要目錄結構。

七、完全卸載MySQL

1. 查詢已安裝包

rpm -qa | grep -i mysql
# 輸出示例:
# MySQL-server-4.0.14-0
# MySQL-client-4.0.14-0

2. 卸載執行

rpm -ev MySQL-server-4.0.14-0 MySQL-client-4.0.14-0

3. 清理殘留數據(謹慎操作)

# 確認數據無用後執行
rm -f /etc/my.cnf
rm -rf /var/lib/mysql
rm -rf /var/log/mysql*  # 若修改過日志路徑

警告:卸載包不會刪除數據目錄與配置文件,手動清理前請確認已完成備份。

八、常見問題與最佳實踐

  • 版本升級:生產環境建議使用rpm -Uvh升級而非先卸後裝,保留數據目錄
  • 多實例部署:通過mysqld_multi工具管理多個實例,各實例獨立配置、數據目錄、端口
  • 安全加固:執行mysql_secure_installation腳本移除匿名用戶、禁止root遠程登錄、刪除test庫
  • 備份策略:結合mysqldump邏輯備份與xtrabackup物理熱備份
  • 監控指標:關注QPS、TPS、緩存命中率、慢查詢數、連接數使用率

九、總結

RPM包管理提供了標準化、可追溯的MySQL部署方式。掌握rpm -ivh/ev/qa核心命令、理解/etc/my.cnf配置層級、熟悉/var/lib/mysql數據目錄結構,是Linux運維工程師的必備技能。現代生產環境更推薦使用Percona Server或MariaDB替代官方MySQL,並配合Ansible、Puppet等自動化工具實現基礎設施即代碼管理。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved