程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> Linux系統下MYSQL源碼安裝的性能考慮

Linux系統下MYSQL源碼安裝的性能考慮

編輯:關於MYSQL數據庫
源碼安裝由於可以靈活的進行數據庫的定制編譯,因此有更強的靈活性。某些編譯選項可以大大增強我們數據庫的性能。執行如下命令可以看到所有編譯的配置選項:

源碼安裝的性能考慮:
17.3.1 去掉不需要的模塊:
源碼安裝由於可以靈活的進行數據庫的定制編譯,因此有更強的靈活性。某些編譯選項可以大大增強我們數據庫的性能。
執行如下命令可以看到所有編譯的配置選項:
shell> ./configure --help
如果只安裝客戶端,可以執行如下命令:
shell> ./configure --without-server
如果你不想要位於“/usr/local/var”目錄下面的日志(log)文件和數據庫,使用類似於下列configure 命令的一個:
local/mysql/tmp/MySQL.sock
17.3.2 只選擇要使用的字符集:
改變安裝後的默認字符集和排序規則:
shell> ./configure -- with-charset=CHARSET
./configure --with-collation=COLLATION
選擇需要安裝的字符集:
shell>./configure --with-extra-charsets=LIST
list 可以是下面任何一項:
空格間隔的一系列字符集名
complex -,以包括不能動態裝載的所有字符集
all –,以將所有字符集包括進二進制
17.3.3 使用pgcc 編譯:
pgcc 2.90.29 或更新版:
CFLAGS="-O3 -mpentiumpro -mstack-align-double" CXX=gcc \
CXXFLAGS="-O3 -mpentiumpro -mstack-align-double \
-felide-constructors -fno- exceptions -fno-rtti"
17.3.4 使用靜態編譯以提高性能:
shell>./configure --with-clIEnt-ldflags=-all-static\
--with-MySQLd-ldflags=-all-static
17.4 MySQL 升級
方法1 最簡單,適合於任何存儲引擎(不一定速度最快)
安裝新數據庫
將老數據庫導出為文本,導入到新數據庫上
shell> MySQLadmin -h hostname -P port -u user -p passwd create db_name
shell> mysqldump --opt db_name | MySQL -h hostname -P port -u user -p
passwd db_name
注:如果網絡較慢,可以在導出選項中加上--compress 來減少網絡傳輸
升級權限表
將原庫中的mysql 數據庫目錄全部cp 過來覆蓋新庫中MySQL 數據庫
在shell 裡面執行MySQL_fix_privilege_tables 命令升級權限表
shell>MySQL_fix_privilege_tables
重啟數據庫服務
方法2 適合於任何存儲引擎,速度較快
安裝新數據庫
舊庫中創建保存輸出文件的目錄並備份數據庫:
shell> mkdir DUMPDIR
shell>MySQLdump --tab=DUMPDIR db_name
將DUMPDIR 目錄中的文件轉移到目標機上相應的目錄中並將文件裝載到MySQL:
shell> MySQLadmin create db_name # create database
shell> cat DUMPDIR/*.sql | MySQL db_name # create tables in database
shell> MySQLimport db_name DUMPDIR/*.txt # load data into tables
(實際測試的時候,發現txt 要放到data 下才能執行,否則提示文件找不到)
升級權限表
將原庫中的mysql 數據庫目錄全部cp 過來覆蓋新庫中MySQL 數據庫在shell 裡面執行MySQL_fix_privilege_tables 命令升級權限表
shell>MySQL_fix_privilege_tables
重啟數據庫服務
方法3 適合於myisam 表,速度最快
安裝新數據庫
將原庫中的數據目錄下的所有文件(.frm,.MYD,MYI)cp 到新庫下的相應目錄下升級權限表
將原庫中的mysql 數據庫目錄全部cp 過來覆蓋新庫中MySQL 數據庫在shell 裡面執行MySQL_fix_privilege_tables 命令升級權限表
shell>MySQL_fix_privilege_tables
flush tables 或者重啟數據庫服務生效

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved