這篇文章主要介紹了mysql的幾種安裝方式及配置,然后在文章底部給大家介紹了安裝過程中的問題總結,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
1、mysql rpm包安裝
#?下載安裝源 [root@localhost?src]#?wget?https://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm #?安裝源 [root@localhost?src]#?rpm?-ivh?mysql-community-release-el7-5.noarch.rpm
2、MySQL yum工具安裝
[root@localhost?/]#?yum?install?-y?mysql-community-server #?查看安裝后的文件路徑 [root@localhost?/]#?which?mysql?mysqld_safe?mysqlbinlog?mysqldump /usr/bin/mysql /usr/bin/mysqld_safe /usr/bin/mysqlbinlog /usr/bin/mysqldump
如需查看每個安裝包包含的詳細文件列表,可以使用“rpm -ql 軟件名”查看,該命令列出了當前rpm包的文件列表及安裝位置。如下:
[root@localhost?/]#?rpm?-ql?openssl /etc/pki/tls/misc/c_hash /etc/pki/tls/misc/c_info /etc/pki/tls/misc/c_issuer /etc/pki/tls/misc/c_name /usr/bin/openssl /usr/share/doc/openssl-1.0.1e /usr/share/doc/openssl-1.0.1e/CHANGES .......
3、MySQL 源碼安裝
#?安裝編譯所需的軟件包 [root@localhost?src]#?yum?install?-y?make?gcc-c++?cmake?bison-devel?ncurses-devel?gcc?autoconf?automake?zlib*?fiex*?libxml* #?下載源碼 [root@localhost?src]#?wget?https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.24.tar.gz #?解壓源碼包 [root@localhost?src]#?tar?xvf?mysql-5.6.24.tar.gz [root@localhost?src]#?cd?mysql-5.6.24 #?進行編譯配置,這個過程將耗時3~5分鐘 [root@localhost?mysql-5.6.24]#?cmake? -DCMAKE_INSTALL_PREFIX=/usr/local/mysql? -DMYSQL_DATADIR=/data/mysql/data? -DSYSCONFDIR=/etc? -DWITH_MYISAM_STORAGE_ENGINE=1? -DWITH_INNOBASE_STORAGE_ENGINE=1? -DMYSQL_UNIX_ADDR=/tmp/mysql/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 #?編譯并且安裝 #?編譯過程大約需要30~50分鐘 [root@localhost?mysql-5.6.24]#?make [root@localhost?mysql-5.6.24]#?make?install #?設置MySQL用戶和組 [root@localhost?mysql-5.6.24]#?groupadd?mysql [root@localhost?mysql-5.6.24]#?useradd?-r?-g?mysql?mysql [root@localhost?mysql-5.6.24]#?cd?/usr/local/mysql/ #?設置權限以便mysql能修改文件 [root@localhost?mysql]#?chown?-R?mysql:mysql?./ [root@localhost?mysql]#?chown?-R?mysql:mysql?/data/mysql/data #?初始化數據庫 #?需要注意的是此處設置的數據目錄應該與之前的MYSQL_DATADIR指定的目錄相同 [root@localhost?mysql]#?scripts/mysql_install_db?--user=mysql?-ldata=/data/mysql/data #?恢復權限設置,并修改相應目錄的權限以便mysql修改 [root@localhost?mysql]#?chown?-R?root?./ [root@localhost?mysql]#?chown?-R?mysql?data
上述示例表示將MySQL軟件安裝到/usr/local/mysql目錄下,本示例中使用的參數及其含義如下:
DCMAKE_INSTALL_PREFIX:表示將MySQL安裝到何處,此例中將安裝到/usr/local/mysql目錄中;
DMYSQL_DATADIR:表示MySQL的數據文件存放目錄; DSYSCONFDIR:配置文件所在目錄;
DWITH_MYISAM_STORAGE_ENGINE:將MyISAM存儲引擎編譯到服務中;
DWITH_INNOBASE_STORAGE_ENGINE:將InnoDB存儲引擎編譯到服務中; DMYSQL_UNIX_ADDR:
DMYSQL_TCP_PORT:默認使用的端口; DENABLED_LOCAL_INFILE:指定是否允許本地執行LOAD DATA
INFILE; DWITH_PARTITION_STORAGE_ENGINE:將分區引擎編譯到服務中;
DEXTRA_CHARSETS:讓服務支持所有擴展配置文件; DDEFAULT_CHARSET:服務使用的默認字符集,此處設置為
UTF8; DDEFAULT_COLLATION:默認的排序規則。
編譯安裝MySQL時有許多參數,這些參數的詳細含義和說明可以在官方網站中查找:http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html
安裝的依賴包的作用:
gcc/g++:MySQL 5.6開始,需要使用g++進行編譯; cmake:MySQL 5.5開始,使用cmake進行工程管理,cmake需要2.8以上版本; bison:MySQL語法解析器需要使用bison進行編譯; ncurses-devel:用于終端操作的開發包; zlib:MySQL使用zlib進行壓縮; libxml:用于XML輸入輸出方式的支持; openssl:使用openssl安全套接字方式通信;
dtrace:用于診斷MySQL問題。
完成上述安裝步驟還不夠,還需要為MySQL添加配置選項、啟動停止腳本等。
cd?/usr/local/mysql/ #去掉配置文件中的注釋行僅顯示有效行 grep?-v?"^#"?my.cnf #將啟動腳本放到/etc/init.d目錄中 cp?support-files/mysql.server?/etc/init.d/mysqld #將mysql添加為系統服務 chkconfig?--add?mysqld service?mysqld?start #此時MySQL的root用戶還沒有密碼,應該為其設置密碼 /usr/local/mysql/bin/mysql?-u?root?-h?192.168.146.150?-p #由于還沒有設置密碼因此直接按下Enter鍵即可 #設置root用戶的密碼為888888 set?password?=?password('888888'); #設置完成后輸入quit退出 quit
附:安裝過程中的問題總結
1、-bash:mysql:command not found
因為mysql命令的路徑在/usr/local/mysql/bin下面,所以你直接配置文件命令時, 系統在/usr/bin下面查此命令,所以找不到了。
解決辦法:使用如下命令做個鏈接即可
ln?-s?/usr/local/mysql/bin/mysql?/usr/bin
2、Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/Server03.mylinux.com.pid).
解決辦法:
修改/etc/my.cnf 中datadir,指向正確的配置文件文件目錄
3、ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
解決辦法:
新建一個鏈接或在mysql中加入-S參數,直接指出mysql.sock位置。
ln?-s?/usr/local/mysql/data/mysql.sock?/tmp/mysql.sock /usr/local/mysql/bin/mysql?-u?root?-S?/usr/local/mysql/data/mysql.sock