說明:
系統:阿里雲的centos 7
mysql:mysql-5.6.27
一、安裝相關依賴
yum -y install make cmake gcc gcc-c++ bison-devel ncurses-devel autoconf automake lrzsz zip unzip netstat-nat libevent.x86_64 libevent-devel.x86_64
yum -y install zlib zlib-devel openssl openssl-devel pcre-devel
二、安裝cmake
什麼是cmake(百度一下):
CMake是一個跨平臺的安裝(編譯)工具,可以用簡單的語句來描述所有平臺的安裝(編譯過程)。他能夠輸出各種各樣的makefile或者project文件,能測試編譯器所支持的C++特性,類似UNIX下的automake。
1.下載cmake
wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
2.編譯安裝
tar -zxvf cmake-2.8.10.2.tar.gz ##解壓壓縮包
cd cmake-2.8.10.2 ##打開所在的目錄
./configure ##檢查環境
make ##編譯
make install ##安裝
3.設置cmake變量
a>對profile進行編輯
vim /etc/profile
b>在文件末尾追加以下兩行代碼(注意路徑不要寫錯):
PATH=/root/software/mysql/cmake-2.8.10.2/bin:$PATH
export PATHsource /etc/profile
c>使配置生效
source /etc/profile
d>查看是否生效
echo $PATH
三、安裝ncurses-devel(可忽略此步驟)
1、什麼是ncurses-devel
ncurses是字符終端下屏幕控制的基本庫,你在TTY下登錄到主機上mysql需要的,所以依賴。
2、下載
wget http://rpmfind.net
3、編譯安裝可參照上面的安裝cmake
四、卸載原有的MySQL
查看原有的MySQL並刪除它,這點很重要,很重要,很重要
rpm -qa|grep mariadb或rpm -qa|grep mysql ##查看是否安裝了mysql或maridb
yum remove mysql-libs-5.1.71-1.el6.x86_64 ##刪除
五、創建mysql的安裝目錄和數據存放目錄
mkdir -p /usr/local/mysql ##用於安裝mysql
mkdir -p /usr/local/mysql/data ##用於存放數據庫
六、創建mysql用戶和用戶組
groupadd mysql 創建mysql組
useradd -r -g mysql -s /bin/false mysql 創建mysql用戶 並放入mysql組 注意:這個mysql用戶沒有登錄系統的權限
查看
[root@iZ70h3rhkurx3iZ ~]# id mysql
uid=997(mysql) gid=1000(mysql) groups=1000(mysql)
七、編譯安裝mysql
1、下載mysql
wget http://mirror.neu.edu.cn/mysql/Downloads/MySQL-5.6/mysql-5.6.27.tar.gz
2、解壓
tar -zxvf mysql-5.6.27.tar.gz ##解壓
cd mysql-5.6.27 ##打開所在目錄
3、編譯安裝
注意事項: 重新編譯時,需要清除舊的對象文件和緩存信息。 # make clean # rm -f CMakeCache.txt # rm -rf /etc/my.cnf
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_USER=mysql \
-DMYSQL_TCP_PORT=3306
編譯需要時間請耐心等待
make ##編譯
make install ##安裝
4、檢查是否成功 文件夾有下列目錄說明安裝成功
ll /usr/local/mysql/ ##掃描一下
total 172
drwxr-xr-x 2 root root 4096 Apr 17 18:44 bin
-rw-r--r-- 1 root root 17987 Sep 18 2015 COPYING
drwxrwxrwx 3 mysql mysql 4096 Apr 17 18:44 data
drwxr-xr-x 2 root root 4096 Apr 17 18:44 docs
drwxr-xr-x 3 root root 4096 Apr 17 18:44 include
-rw-r--r-- 1 root root 105656 Sep 18 2015 INSTALL-BINARY
drwxr-xr-x 3 root root 4096 Apr 17 18:44 lib
drwxr-xr-x 4 root root 4096 Apr 17 18:44 man
drwxr-xr-x 10 root root 4096 Apr 17 18:44 mysql-test
-rw-r--r-- 1 root root 2496 Sep 18 2015 README
drwxr-xr-x 2 root root 4096 Apr 17 18:44 scripts
drwxr-xr-x 28 root root 4096 Apr 17 18:44 share
drwxr-xr-x 4 root root 4096 Apr 17 18:44 sql-bench
drwxr-xr-x 2 root root 4096 Apr 17 18:44 support-files
八、設置mysql的權限
打開mysql所安裝的目錄
cd /usr/local/mysql
設置
[root@localhost mysql]# chown -R root:mysql . ## 注意後面的.
[root@localhost mysql]# chown -R mysql:mysql data
九、初始化數據庫
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
十、設置環境變量
vi /root/.bash_profile
在後面追加:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
export PATH
source/root/.bash_profile ##使剛纔的設置生效
cp support-files/my-medium.cnf /etc/my.cnf
十一、首次,啓動mysql
首次啓動是不需要密碼的,提示出入密碼的時候按回車就行
./bin/mysqld_safe --user=mysql & ##啓動
cp support-files/mysql.server /etc/init.d/mysql ##將mysql添加到服務
啓動相關命令
service mysql start 啓動
service mysql stop 停止
service mysql restart 重啓
service mysql reload 重載配置
如果啓動失敗是權限的問題
chown -R mysql:mysql /usr/local/mysql ##設置權限
再次啓動
/etc/init.d/mysql start
十二、設置用戶名和密碼並打開遠程連接
[root@localhost mysql]# mysql -u root mysql
mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; ##授權,爲root添加遠程連接,非常重要或update user set host=’%’ where host='localhost'#可以只留host爲%和127.0.0.1的兩條數據
mysql> update user set Password=password("123456") where User="root"; ##設置root用戶的密碼
mysql> select Host,User,Password from user where User="root";
mysql> flush privileges;
mysql> exit
這個時候就可以遠程連接了,和重新登錄了
[root@localhost mysql]# mysql -u root -p
或者mysql -h 113.11.198.47 -u pangu -p
Enter password:123456
或者用:mysql -u root -p"123456";
十三、關閉防火牆
[root@localhost]# /etc/rc.d/init.d/iptables stop
[root@localhost]# /etc/rc.d/init.d/iptables stop
或者:
service iptables restart
service iptables stop
感謝分享
Linux CentOS7源碼安裝配置mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz