linux centos7下原始碼 tar安裝mysql5.7.22或mysql5.7.20 圖文詳解
之前用的rpm安裝的每次安裝都是最新的,,,導致每次版本不統一。。。
現在用tar包安裝5.7.22和5.7.20一樣的 5.7.20之後的和之前的版本還是有點不一樣的
1. cd /usr/local/src
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
解壓 tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
複製 cp -r mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/mysql
2、新增系統mysql組和mysql使用者
新增系統mysql組 groupadd mysql
新增mysql使用者 useradd -r-g mysql mysql (新增完成後可用id mysql
檢視)
3、安裝資料庫
切到mysql目錄 cd /usr/local/mysql
修改當前目錄擁有者為mysql使用者 chown -R mysql:mysql ./
安裝資料庫 bin/mysqld--initialize--user=mysql--basedir=/usr/local/mysql--datadir=/usr/local/mysql/data
生成了臨時密碼
(看到有的報這個錯
bin/mysqld: error while loading shared libraries: libaio.so.1:
解決方法:yum install -y libaio //安裝後在初始化就OK了)
執行以下命令建立RSA private key
bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
修改當前目錄擁有者為mysql使用者 chown -R mysql:mysql ./
修改當前data目錄擁有者為mysql使用者 chown -R mysql:mysql data
4、配置my.cnf
vim /etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
#不區分大小寫 (sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 這個簡單來說就是sql語句是否嚴格)
lower_case_table_names = 1
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
新增開機啟動 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
修改 vim /etc/init.d/mysqld
新增路徑 在46行
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
5、啟動mysql service mysqld start
加入開機起動 chkconfig --add mysqld
6、登入修改密碼 mysql -uroot -p 上面初始化時的密碼
如果出現錯誤 需要新增軟連線 ln -s /usr/local/mysql/bin/mysql /usr/bin
第一件事先修改密碼
alter user 'root'@'localhost' identified by 'root';
flush privileges; #重新整理許可權
GRANT ALL PRIVILEGES ON *.* TO 'root1'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; #授權新使用者