mysql5.5源碼包編譯安裝

一、源碼包準備


(1)mysql-5.5.15.tar.gz      mysql源碼包。去www.mysql.com下載最新的mysql5.5.15。


(2)安裝所需相關庫文件

#yum -y install gcc gcc-c++ ncurses-devel cmake make


二、編譯過程


(1)創建目錄,用戶和權限。


#mkdir -p /app/wodsy/mysql          #建立mysql安裝目錄


#mkdir -p /app/wodsy/mysql/tmp


#groupadd mysql                       #添加mysql組


#useradd -g msyql msyql           #添加一個mysql用戶並加入到mysql組中


#chown -R mysql.mysql /data/mysql  #將/data/mysql目錄的所有權賦予mysql組中的mysql                                     用戶


(2)安裝mysql


#cd mysql-5.5.15


cmake -DCMAKE_INSTALL_PREFIX=/app/wodsy/mysql \        【安裝目錄】

-DMYSQL_DATADIR=/data/dbdata \                         【會自動在安裝目錄下生成該目錄,無需創建 】

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_PARTITION_STORAGE_ENGINE=1 \

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DMYSQL_UNIX_ADDR=/app/wodsy/mysql/tmp/mysql.sock \    【需創建目錄】

-DMYSQL_TCP_PORT=3306 \

-DENABLED_LOCAL_INFILE=1 \

-DWITH_EXTRA_CHARSETS=all \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_SSL=yes

                                 '

#make &&make install


註釋:

DCMAKE_INSTALL_PREFIX=/app/wodsy/mysql          //mysql安裝目錄

DMYSQL_UNIX_ADDR=/app/wodsy/mysql/tmp/mysql.sock         //連接數據庫socket路徑

DMYSQL_DATADIR=/app/wodsy/mysql/data                      //mysql數據存放目錄,會在安裝目錄下自動創建

DMYSQL_USER=mysql                               //mysql用戶

DDEFAULT_CHARSET                                //默認字符

DDEFAULT_COLLATION                              //默認字符集

DWITH_EXTRA_CHARSETS=all                        //校驗字符

DWITH_MYISAM_STORAGE_ENGINE=1                   //安裝MYISAM存儲引擎

DWITH_INNOBASE_STORAGE_ENGINE=1                 // 安裝 innodb 存儲引擎

DWITH_MEMORY_STORAGE_ENGINE=1                   //安裝 memory 存儲引擎

DWITH_READLINE=1                                //使用綁定的readline

DENABLED_LOCAL_INFILE=1                         //允許從本地導入數據


三、拷貝相關啓動腳本並初始化數據庫並再次授權


1、把啓動腳本傳到/etc/init.d/下


cp support-files/mysql.server /etc/init.d/mysqld


2、把mysql連接命令,cp到 用戶變量下


cp /app/wodsy/mysql/bin/mysql*      /usr/sbin/


3、授權並設置開機啓動


#chmod 755 scripts/mysql_install_db                               #增加權限

#chown -R mysql:mysql /app/wodsy/mysql 

#chmod 755 /etc/init.d/mysqld

#chkconfig mysql on 


4、初始化mysql


cd /app/wodsy/mysql/scripts

./mysql_install_db --user=mysql --basedir=/app/wodsy/mysql(安裝目錄)                     --datadir=/app/wodsy/mysql/data(數據庫存放目錄)

########################################

報錯:

ERROR: 1  Can't create/write to file '/app/wodsy/mysql/data/mysql/db.MYI' (Errcode: 13)

150323 22:21:11 [ERROR] Aborting

解決方法:

給mysql的父目錄 wodsy 755權限

########################################

輸出下列就沒問題

【141104 21:59:47 [Warning] The syntax '--log-slow-queries' is deprecated and will be removed in a 


future release. Please use '--slow-query-log'/'--slow-query-log-file' instead.

OK

Filling help tables...

141104 21:59:50 [Warning] The syntax '--log-slow-queries' is deprecated and will be removed in a future 


release. Please use '--slow-query-log'/'--slow-query-log-file' instead.

OK】

#########################################


四、編輯並優化配置文件


[client]

port            = 3306

socket          = /app/wodsy/mysql/tmp/mysql.sock



[mysqld]

port            = 3306

socket          = /app/wodsy/mysql/tmp/mysql.sock      【sock路徑】

basedir = /app/wodsy/mysql                             【安裝路徑】

datadir = /app/wodsy/mysql/data                        【數據庫存放路徑】       group_concat_max_len = 20000

event_scheduler = 1

join_buffer_size = 16M

query_cache_limit = 8M

query_cache_size = 1024M

query_cache_type = 1

bulk_insert_buffer_size = 64M

max_heap_table_size = 64M

key_buffer_size = 256M

tmp_table_size = 256M

table_open_cache = 10240


thread_cache_size = 16

thread_concurrency = 16

thread_stack = 256k


######## bin_log ###########


server-id = 1

log-bin=mysql-bin

binlog_cache_size = 4M

binlog_format=mixed

log_warnings

expire_logs_days = 15


######### slow query log #######


log-slow-queries=/app/wodsy/mysql/data/slow.log

long_query_time = 4

#log-queries-not-using-indexes


[mysqldump]

quick

max_allowed_packet = 64M


[mysql]

no-auto-rehash


[mysqlhotcopy]

interactive-timeout


[mysqld_safe]  

open-files-limit = 8192

################################################################


#/etc/init.d/mysql start     #啓動mysql


可以在進程中查看mysql是否啓動,完成。


設置一個mysql的root密碼


#mysqlamdin -u root password '123456'

到此,mysql-5.5基本搭建完了


五、允許mysql從外網登錄

#mysql -u root -p 


mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'wodsy.com@#$';

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'wodsy.com@#$';

mysql > flush privileges;


六、啓動可能報的錯誤

如果啓動mysql如下錯誤:

Starting MySQL.... ERROR! The server quit without updating PID file (/data/mysql/localhost.pid)


或者 

ERROR: 1  Can't create/write to file '/app/wodsy/mysql/data/mysql/db.MYI' (Errcode: 13)

1、看一下/data/mysql這個目錄的屬主:屬組是不是 【mysql】

2、看一下/etc/my.cnf 【mysql】模塊下是否指明瞭 mysql安裝路徑和數據庫存放路徑

3、也有可能是mysql的父目錄沒有權限造成的

比如給wodsy目錄權限

chmod 755 /app/wodsy 









發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章