在Linux下編譯安裝mysql
阿新 • • 發佈:2018-11-01
1、在官網下載mysql壓縮包:
下載地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads
下載版本:我這裡選擇的5.6.33,通用版,linux下64位
也可以直接通過命令下載:
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
2、將mysql進行解壓:
#解壓
tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
#複製解壓後的mysql目錄
cp -r mysql-5.6.33-linux-glibc2.5-x86_64 /usr/local/mysql
3、新增使用者組和使用者
#新增使用者組
groupadd mysql
#新增使用者mysql 到使用者組mysql
useradd -g mysql mysql
4、安裝mysql
因為我們是編譯安裝需要生成configure檔案
需要下載編譯工具yum install autoconf -y
cd /usr/local/mysql/ 轉到該目錄下
mkdir -p data/mysql 建立目錄
chown -R mysql:mysql ./ 將./的屬主屬組改為mysql
cd /scripts
./mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/mysql
執行此處會報錯
安裝時的一些錯誤
-bash: ./scripts/mysql_install_db: /usr/bin/perl: bad interpreter: 沒有那個檔案或目錄
解決: yum -y install perl perl-devel
Installing MySQL system tables…/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解決:yum -y install libaio-devel
cp support-files/mysql.server /etc/init.d/mysqld 複製
chmod 755 /etc/init.d/mysqld 更改許可權
cp support-files/my-default.cnf /etc/my.cnf複製檔案
5、修改啟動指令碼
vi /etc/init.d/mysqld
找到
basedir=
datadir=
加上路徑
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data/mysql
6、啟動mysql服務
service mysqld start
7、測試連線
./mysql/bin/mysql -uroot
8、加入環境變數,編輯 /etc/profile,這樣可以在任何地方用mysql命令了
最後一行加入export PATH=$PATH:/usr/local/mysql/bin
讓變數生效source /etc/profile
#啟動mysql
service mysqld start
#關閉mysql
service mysqld stop
#檢視執行狀態
service mysqld status
9、可能出現的錯誤
sqlyog連線時,報1130錯誤,是由於沒有給遠端連線的使用者許可權問題
解決1:更改 ‘mysql’資料庫‘user’表‘host’項,從‘localhost’改成‘%’。
use mysql;
select ‘host’ from user where user=‘root’;
update user set host = ‘%’ where user =‘root’;
flush privileges;
解決2:直接授權
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘youpassword’ WITH GRANT OPTION;
初次嘗試安裝:參考的部落格: