您好,登錄后才能下訂單哦!
1、下載mysql到/usr/local/src/
cd /usr/local/src/ wget http://distfiles.macports.org/cmake/cmake-2.8.12.tar.gz wget http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.6/mysql-5.6.35.tar.gz
2、編譯安裝cmake編譯安裝 mysql(最新版本都需要 cmake 編譯安裝)
[root@server2 src]# tar -zxvfcmake-2.8.12.tar.gz [root@server2 src]# cd cmake-2.8.12 [root@server2 cmake-2.8.12]# ./bootstrap
Log of errors: /usr/local/src/cmake-2.8.12/Bootstrap.cmk/cmake_bootstrap.log
解決辦法:
安裝LAMP所需要的環境
yum -y install make gcc* gcc-c++ zlib-devel libtool libtool-ltdllibtool-ltdl-devel bison ncurses-devel
安裝好所需要的環境包后,重新執行./bootstrap
[root@server2 cmake-2.8.12]# ./bootstrap [root@server2 cmake-2.8.12]# echo $? 0 [root@server2 cmake-2.8.12]# gmake [root@server2 cmake-2.8.12]# echo $? 0 [root@server2 cmake-2.8.12]# gmake install [root@server2 cmake-2.8.12]# echo $? 0
3、建立mysql用戶
[root@server1 src]# groupadd mysql [root@server1 src]# useradd -g mysql -s/sbin/nologin -M mysql [root@server1 src]# id mysql uid=500(mysql) gid=500(mysql)groups=500(mysql)
4、創建數據庫存放的目錄,并授權
[root@server1 mysql]# mkdir -p /data/mysql [root@server1 mysql]# chown -R mysql.mysql /data/mysql/ [root@server1 mysql]# chown -R mysql.mysql /usr/local/mysql/. //數據庫安裝路徑
5、編譯安裝mysql
[root@server2 src]# tar -zxvfmysql-5.6.35.tar.gz [root@server2 src]# cd mysql-5.6.35 [root@server2 mysql-5.6.35]# cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql\ -DMYSQL_UNIX_ADDR=/data/mysql/mysql_3306.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=utf8,gbk \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1\ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_EENGINE=1 \ -DWITH_READLINE=1 \ -DMYSQL_DATADIR=/data/mysql/ \ -DMYSQL_TCP_PORT=3306
參數說明:
-DCMAKE_INSTALL_PREFIX #指定安裝路徑
-DMYSQL_UNIX_ADDR #數據庫socket文件路徑
-DDEFAULT_CHARSET #默認字符集
-DDEFAULT_COLLATION #默認編碼
-DWITH_EXTRA_CHARSETS #額外編碼
-DWITH_PERFSCHEMA_STORAGE_ENGINE #啟用PERFSCHEMA引擎支持
-DWITH_FEDERATED_STORAGE_ENGINE #啟用FEDERATED引擎支持
-DWITH_PARTITION_STORAGE_ENGINE #啟用PARTITION引擎支持
-DWITH_ARCHIVE_STORAGE_EENGINE #啟用ARCHIVE引擎支持
-DWITH_READLINE #使用readline功能
-DMYSQL_DATADIR #數據庫數據存放目錄
-DMYSQL_TCP_PORT #數據庫TCP/IP端口
[root@server2 mysql-5.6.35]# echo $? 0 [root@server2 mysql-5.6.35]# make [root@server2 mysql-5.6.35]# echo $? 0 [root@server2 mysql-5.6.35]# make install [root@server2 mysql-5.6.35]# echo $? 0
bin 目錄包含客戶端工具及mysqld
data 目錄存放數據庫數據文件及日志文件
docs 目錄包含info格式的用戶手冊
include 目錄包含mysql頭文件
lib 目錄包含相關lib庫
mysql-test 目錄包含mysql的一些測試腳本文件
scripts 目錄存放mysql_install_db初始化文件
share 目錄存放各種支持文件,包括錯誤信息,語言編碼支持,sql安裝腳本等。
Sqlbench 目錄存放benchmark腳本
support-file 目錄存放mysql配置文件模板
6、復制mysql配置文件到/etc/my.cnf
[root@server2 mysql]# rm –f /etc/my.cnf [root@server2 mysql]# cd support-files/ [root@server2 support-files]# ls binary-configure magic mysqld_multi.server mysql-log-rotate mysql.server [root@server2 support-files]# cp /usr/local/mysql/support-files/ /etc/my.cnf
編輯/etc/my.cnf配置文件,添加以下行
user = mysql //用戶 basedir = /usr/local/mysql //基本目錄 datadir = /data/mysql //數據庫保存目錄 port = 3306 //數據庫端口 socket = /data/mysql/mysql_3306.sock log-error = /data/mysql/mysql_error.log //數據庫錯誤日志文件 pid-file = /data/mysql/mysql.pid //數據庫進程占用PID號 #內存使用限制 performance_schema_max_table_instances=400 table_definition_cache=400 table_open_cache=256
7、初始化數據庫
[root@server2 mysql]#/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql/ [root@server2 mysql]# echo $? 0
初始化數據庫常見的問題: 系統版本與數據庫版本不一致,導致初始化數據庫出錯。
8、復制mysql啟動腳本到/etc/init.d/mysqld
[root@server2 support-files]# cp /usr/local/mysql/support-files/mysql.server/etc/init.d/mysqld [root@server2 support-files]# chmod +x/etc/init.d/mysqld
9、加入開機自啟動mysql服務
[root@server2 mysql]# chmod +x/etc/init.d/mysqld [root@server2 mysql]# chkconfig --addmysqld [root@server2 mysql]# chkconfig –level 35 mysqldon
10、 啟動mysql服務
[root@server2 mysql]# /etc/init.d/mysqldstart Starting MySQL. [ ]
11、 msyql服務啟動后,查看/data/mysql多了一些文件
[root@server2 mysql]# ls /data/mysql/ auto.cnf ib_logfile0 mysql mysql_error.log performance_schema ibdata1 ib_logfile1 mysql_3306.sock mysql.pid test [root@server2 mysql]# netstat -lnapt |grepmysqld tcp 0 0 :::3306 :::* LISTEN 3195/mysqld
12、加入環境變量
[root@server2 ~]# vim/etc/profile.d/mysql.sh
#!/bin/bash exportPATH="$PATH:/usr/local/mysql/bin"
[root@server2 ~]# source/etc/profile.d/mysql.sh
13、 新加的mysql沒有設置root密碼,可以通過下面命令設置root密碼:
#/usr/local/mysql/bin/mysqladmin -S /data/mysql/mysql_3306.sock-u root password 'new-password'
14、登錄mysql
[root@server2 ~]# mysql
ERROR 2002 (HY000): Can'tconnect to local MySQL server through socket '/tmp/mysql.sock' (2)
問題:/tmp目錄下沒找到mysql.sock,解決辦法有三種:
1) 將/data/mysql/mysql_3306.sock做軟鏈接到/tmp/mysql.sock
ln -s /data/mysql/mysql_3306.sock/tmp/mysql.sock
2) 修改/etc/my.cnf,添加以下行
[client]
socket = /data/mysql/mysql_3306.sock
3) 執行以下命令指定socket連接文件,mysql –S /data/mysql/mysql_3306.sock
[root@server2 ~]# mysql -S/data/mysql/mysql_3306.sock
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。