MySQL 安裝方法

本博文主要是爲了增加記憶同時促進大家共同學習,如在發現中有理解錯誤請幫忙留言改正,不勝感激。

 本次主要是mysql-5.5.54 的安裝

基礎環境爲:

                  centos 6.8 

 一、下載mysql-5.5.54 安裝包

       創建軟件存放目錄

                    mkdir /home/softwares/

                    cd  /home/softwares/

                    wget  http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.54.tar.gz

二、安裝mysql 依賴包

                    yum install -y cmake;

                    yum install -y gcc gcc-c++ ;

                    yum install -y ncurses-devel.x86_64 ;

                    yum install -y cmake.x86_64 ;

                    yum install -y libaio.x86_64 ;

                    yum install -y bison.x86_64 ;

                    yum install -y gcc-c++.x86_64;

                    yum install -y perl-Module-Build;

                    yum install -y libtool zilib-devel ;

                    yum install -y libaio.x86_64;

                    yum install -y perl.x86_64;

                    yum install -y perl-Module-Pluggable.x86_64;

                    yum install -y perl-Pod-Escapes.x86_64;

                    yum install -y perl-Pod-Simple.x86_64;

                    yum install -y perl-libs.x86_64;

                    yum install -y perl-version.x86_64  ;

                    yum install –y openssl openssl-devel ncurses ncurses-devel;

            2、創建用戶和組分區

                   groupadd mysql  

                   useradd mysql -g mysql -M -s /sbin/nologin

            3、解壓mysql-5.5.54.tar.gz

                   tar -zxvf mysql-5.5.54.tar.gz && cd mysql-5.5.54/  && chmod +x *

            4、編譯安裝

cmake \ ##相當於config
-DCMAKE_INSTALL_PREFIX=/u01/app/mysql/db \   ##數據庫安裝的目錄
-DSYSCONFDIR=/u01/app/mysql/db/etc \       ##數據庫安裝的配置文件,不用原來的默認文件可以避免多次升級的時候讀取錯誤的配置文件
-DMYSQL_DATADIR=/u01/data/mysql/db/data \ ##數據庫默認存放庫表存放的位置
-DWITH_MYISAM_STORAGE_ENGINE=1 \ 
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/u01/app/mysql/db/mysql.sock \ ##本地通信日誌
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \

             make  install

           5、編寫配置文件

                cd /u01/app/mysql/db/  &&  mkdir etc && cd etc

                mkdir etc

                vi my.cnf

cat my.cnf 

[mysqld]

#########data###########

user=mysql

basedir = /u01/app/mysql/db

datadir = /u01/app/mysql/data

innodb_log_group_home_dir=/u01/app/mysql/engine/innolog

innodb_log_file_size = 50M

innodb_data_home_dir=/u01/app/mysql/engine/innodata

#innodb_data_file_path = ibdata1:100M;ibdata2:150M:autoextend

innodb_data_file_path = ibdata1:100M:autoextend

log-bin = /u01/app/mysql/log/mysql-binlog

log-bin-index = /u01/app/mysql/log/mysql-bin.index

binlog_cache_size = 32M

max_binlog_size=512M

binlog_format=row

innodb_file_per_table=1

log-error = /u01/app/mysql/mysql-error.log

pid-file = /u01/app/mysql/mysql.pid

skip-name-resolve

socket=/u01/app/mysql/mysql.sock

############pool#########

#*******skip-innodb*********

innodb_additional_mem_pool_size = 64M

innodb_buffer_pool_size=256M

innodb_write_io_threads = 8

innodb_read_io_threads = 8

innodb_thread_concurrency = 16

innodb_flush_log_at_trx_commit = 1

innodb_log_buffer_size = 16M

innodb_log_file_size = 512M

innodb_log_files_in_group = 3

innodb_max_dirty_pages_pct = 90

innodb_lock_wait_timeout = 120

port=3306

server-id= 1

# *** global cache ***

read_buffer_size = 32M

read_rnd_buffer_size = 128M

sort_buffer_size = 64M

join_buffer_size = 64M

# *** query cache ***

query_cache_size = 128M

query_cache_limit = 4M

# *** bin log ***

#log_slave_updates

log_warnings

###########others#########

#***transaction***

default-storage-engine = INNODB

transaction_isolation = REPEATABLE-READ

# *** thread ***

thread_cache_size = 16

thread_stack = 512K

#*** network ***

back_log = 512

#skip-networking

max_connections = 3000

max_connect_errors = 30

table_open_cache = 4096

max_allowed_packet = 32M

max_heap_table_size = 512M

#*** char set ***

character-set-server = utf8

#explicit_defaults_for_timestamp = true

# *** tmp table ***

tmp_table_size = 128M

# *** slow query log ***

slow_query_log

long_query_time = 10

[mysqldump]

quick

max_allowed_packet = 32M

[mysql]

auto-rehash

[myisamchk]

key_buffer_size = 12M

sort_buffer_size = 12M

read_buffer = 32M

write_buffer = 32M

[mysqlhotcopy]

interactive-timeout

[client]

socket=/u01/app/mysql/mysql.sock

port=3306

           6、將mysql啓動腳本腳本命令複製到/etc/init.d/

                cp /u01/app/mysql/db/support-files/mysql.server  /etc/init.d/mysqld && chmod +x                 /etc/init.d/mysqld

                chmod +x /etc/init.d/mysqld

               

           7、根據my.cnf 創建目錄他不會自動創建目錄

               mkdir -p /u01/app/mysql/data/engine/innolog

               mkdir -p /u01/app/mysql/data/engine/innodata

               mkdir -p /u01/app/mysql/data/mysql-binlog

               mkdir -p /u01/app/mysql/log/

               chown mysql. /u01/app/mysql/ -R

                cd /u01/app/mysql/db

          8、初始化語句數據庫安裝指定的目錄,數據庫默認存放目錄

               ./scripts/mysql_install_db --basedir=/u01/app/mysql/db --datadir=/u01/app/mysql/data --user=mysql

           更改環境變量

            vim ~/.bash_profile

            PATH=$PATH:$HOME/bin:/u01/app/mysql/db/bin/

            環境變量生效

             source ~/.bash_profile

            如果報錯:

 /etc/init.d/mysqld start

 配置文件的問題

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

一般需要自己查詢配置文件是否設置的參數過大或者過小,查看機器內存是否過小,如果都是可以的請刪除除了db 文件之外的所有 然後重新創建目錄

              ##########啓動成功之後設置密碼###########

                mysqladmin -uroot password "123456"


                



    



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