CentOS 5.5下安裝MySQL 5.5全過程分享

安裝環境:Linux服務器CentOS 5.5

安裝版本:mysql-5.5.8.tar.gz

1、安裝 cmake 編譯器。

1)、下載cmake

#cd /usr/local/src

#wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz

2)、解壓cmake

#tar -zvxf cmake-2.8.4.tar.gz 

3)、配置編譯

#cd cmake-2.8.4
#yum -y install gcc
#yum -y install gcc-c++
#yum -y install ncurses-devel
#./configure
#make
#make install

2、安裝MySQL

1)、下載MySQL。

#cd /usr/local/src

#wget http://sdk.ruiya.com/linux/mysql-5.5.9.tar.gz

2)、添加必要的組和擁有者

#groupadd mysql

#useradd -r -g mysql mysql

3)、解壓MySQL

#tar -zvxf mysql-5.5.9.tar.gz

4)、配置編譯

如果是重裝MySql,請先刪除my.cnf如: rm -rf /etc/my.cnf

#mkdir /usr/local/mysql

#mkdir /usr/local/mysql/data

#cd /usr/local/src/mysql-5.5.9

#cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DINSTALL_DATADIR=/usr/local/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1

參數說明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安裝目錄
-DINSTALL_DATADIR=/usr/local/mysql/data //數據庫存放目錄
-DDEFAULT_CHARSET=utf8     //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校驗字符
-DEXTRA_CHARSETS=all     //安裝所有擴展字符集
-DENABLED_LOCAL_INFILE=1    //允許從本地導入數據

#make

#make install

注意事項:

重新編譯時,需要清除舊的對象文件和緩存信息。

# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf 

4)、設置目錄權限

# cd /usr/local/mysql

# chown -R root:mysql . //把當前目錄中所有文件的所有者所有者設爲root,所屬組爲mysql

# chown -R mysql:mysql data

5)、配置文件

# cp support-files/my-medium.cnf /etc/my.cnf //這個配置僅適合小內存系統(32M - 64M)

打開如下注釋

innodb_data_home_dir = /usr/local/mysql/data
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/data

innodb_buffer_pool_size = 16M
innodb_additional_mem_pool_size = 2M

innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50

添加默認字符集

[client] 
default-character-set=utf8    // 添加編碼支持
[mysqld]
character_set_server=utf8   // 添加編碼支持

init_connect='SET NAMES utf8'  

max_connections = 10000    //根據服務器性能調節
basedir = /usr/local/mysql //設置安裝目錄,這樣在系統啓動時才能正確運行到/etc/rc.d/init.d/mysql start

6)、創建系統數據庫的表

# cd /usr/local/mysql

# scripts/mysql_install_db --user=mysql

7)、設置權限啓動

設置環境變量

# vi /root/.bash_profile

在PATH=$PATH:$HOME/bin添加參數爲:

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

#source /root/.bash_profile

手動啓動MySQL

# cd /usr/local/mysql

# ./bin/mysqld_safe --user=mysql &   //啓動MySQL,但不能停止

啓動日誌寫在此文件下:/usr/local/mysql/data/localhost.err

關閉MySQL服務

# mysqladmin -u root -p shutdown  //這裏MySQL的root用戶還沒有配置密碼,所以爲空值。

通過腳本啓動MySQL: /etc/rc.d/init.d/mysql start

cp /usr/loacl/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql

# cd /etc/rc.d/init.d
# chkconfig --add mysql       //配置是否自動啓動, chkconfig --del mysql 可刪除
# chmod +x /etc/rc.d/init.d/mysql //添加如執行權限

 

8)、修改MySQL的root用戶的密碼

# mysql -u root mysql

mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";  //爲root添加遠程連接的能力。
mysql>update user set Password = password('xxxxxx') where User='root';
mysql>select Host,User,Password from user where User='root'; 
mysql>flush privileges;
mysql>exit

重新登錄:mysql -u root -p

delete from mysql.user where user='';  ← 刪除匿名用戶

select user,host from mysql.user;  ← 查看用戶信息

show variables like "%char%";

+--------------------------+--------------------------+ 
| Variable_name            | Value                    | 
+--------------------------+--------------------------+ 
| character_set_client     | latin1                   | 
| character_set_connection | latin1                   | 
| character_set_database   | latin1                   | 
| character_set_filesystem | binary                   | 
| character_set_results    | latin1                   | 
| character_set_server     | latin1                   | 
| character_set_system     | utf8                     | 
| character_sets_dir       | D:\MySQL\share\charsets\ | 
+--------------------------+--------------------------+ 
需要修改編碼格式爲UTF-8
導入數據庫sql的時候,請確保sql文件爲utf8編碼
進入mysql命令行後 輸入 set names utf8;
再進入數據庫 use test;
在導入sql腳本 source test.sql;


9)、導出數據庫生成SQL腳本

mysqldump -h 192.168.200.18 -u root -p TestDB > TestDB.sql

<2>、測試mysql守護進程。

#cd /usr/local/mysql/mysql-test ; 

#perl mysql-test-run.pl

發佈了46 篇原創文章 · 獲贊 5 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章