關于MySQL安裝方式及配置幾種方式的問題小結

這篇文章主要介紹了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

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享