Mysql安裝文檔

yum -y install cmake make ncurses-devel gcc gcc-c++ bison perl

    創建MySQL用戶和用戶組

/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql

    解壓縮

tar zxvf mysql-5.6.12.tar.gz
cd mysql-5.6.12

    MySQL5.5之前的版本是configure現在是cmake,格式略有不同,以下使用了換行符,如果不用換行符則在同一行。

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql \
-DSYSCONFDIR=/usr/local/webserver/mysql \
-DMYSQL_DATADIR=/data/mysql/3306/data \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_USER=mysql

編譯安裝

make
make install

更改目錄所有者爲mysql並創建相關目錄

chown -R mysql:mysql /usr/local/webserver/mysql
mkdir -p /data/mysql/3306/data/
mkdir -p /data/mysql/3306/binlog/
mkdir -p /data/mysql/3306/relaylog/
chown -R mysql:mysql /data/mysql/

對數據庫進行初始化
/usr/local/webserver/mysql/scripts/mysql_install_db --basedir=/usr/local/webserver/mysql \
--datadir=/data/mysql/3306/data --user=mysql --defaults-file=/usr/local/webserver/mysql/my.cnf \
--explicit_defaults_for_timestamp

刪除默認配置文件並設置開機啓動

rm -rf /etc/my.cnf
cd support-files/
cp mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on

啓動MySQL

service mysqld start

登錄MySQL並創建默認用戶

登陸mysql
/usr/local/webserver/mysql/bin/mysql

登錄後再MySQL命令界面下執行如下命令創建root用戶,並將密碼也設置成root(當然可以設置爲其他值)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY 'root';
flush privileges;

到此爲止已經安裝完成!

    其他優化配置可以參考如下做法:

編輯MySQL的配置文件vi /usr/local/webserver/mysql/my.cnf 然後輸入如下配置

    #錯誤日誌目錄
    log-error = /data/mysql/3306/mysql_error.log
    #二進制日誌目錄
    log-bin = /data/mysql/3306/binlog/binlog

    #InnoDB 緩存數據大小(索引、鎖、插入緩衝、數據字典等)
    #推薦設置爲物理內存的25%-50%
    innodb_buffer_pool_size = 1G

    #InnoDB共享表空間初始化大小
    innodb_data_file_path = ibdata1:1G:autoextend

    #每次事務提交或事務外的指令都需要將日誌寫入硬盤,設置爲1比較安全
    innodb_flush_log_at_trx_commit = 1

    #InnoDB日誌緩存
    innodb_log_buffer_size = 64M

    #InnoDB 大量寫操作時有幫助
    innodb_log_file_size = 256M

    #啓用InnoDB的status file
    innodb_status_file = 1

    #最大連接數
    max_connections = 100

    #最大連接錯誤次數
    max_connect_errors = 10000

    #設置慢查詢時間
    long_query_time = 1

    #設置臨時表最大值,max_heap_table_size 和 tmp_table_size 要設置一樣大
    max_heap_table_size = 96M
    tmp_table_size = 96M

修改後重啓MySQL,如果不能重啓成功需要將/data/mysql/3306/data目錄下的ibdata1及ib_logfile*文件刪除然後重新啓動。 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章