Linux環境 MySql詳細安裝、解除安裝步驟
阿新 • • 發佈:2022-04-16
Linux系統版本CentOS Linux release 7.5.1804
安裝的是mysql5.7.24版本rpm包
一、安裝
1.下載MySQL安裝包
安裝包下載地址:https://downloads.mysql.com/archives/community/
2.詳細過程如下(一個一點也不靈活的指令碼)
#!/bin/bash echo '建立使用者目錄並賦權' useradd mysql -d /usr/local/mysql echo '刪除CentOS7自帶的第三方庫' #rpm -qa | grep mariadb #rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 echo '環境及依賴安裝' #yum -y install autoconf #yum -y install perl perl-devel #yum -y install libaio #yum -y install net-tools #yum -y install perl echo '建立MySQL倉庫位置' mkdir -p /data/mysql echo '倉庫賦權' chown -R mysql:mysql /data/** echo '按照依賴關係依次安裝 rpm 包,依賴關係依次為 common→libs→client→server。使用命令rpm -ivh {-file-name}進行安裝操作。' rpm -ivh mysql-community-common-5.7.24-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-5.7.24-1.el7.x86_64.rpm rpm -ivh mysql-community-client-5.7.24-1.el7.x86_64.rpm rpm -ivh mysql-community-server-5.7.24-1.el7.x86_64.rpm echo '設定初始化引數' cd /usr/sbin ./mysqld \ --initialize \ --user=mysql \ --basedir=/usr/local/mysql #【這個沒弄明白】這個basedir是和mysql啟動相關的,但是我這裡面是空的 echo '初始化安裝' cd /usr/bin ./mysql_install_db \ --user=mysql \ --datadir=/data/mysql echo '啟動MySQL服務' systemctl start mysqld echo '檢視MySQL服務狀態' systemctl status mysqld echo '檢視MySQL服務程序資訊' ps -ef|grep mysql echo '檢視系統埠情況' netstat -lnpt echo '檢視允許訪問的埠列表' firewall-cmd --list-ports echo '新增3306埠永久可訪問' firewall-cmd --zone=public --add-port=3306/tcp --permanent echo '重新整理防火牆列表' firewall-cmd --reload echo '檢視MySQL服務是否開機自啟動' systemctl list-units | grep mysqld echo '列印MySQL初始密碼' grep "password is generated for" /var/log/mysqld.log cat /root/.mysql_secret echo '初始密碼登入myql服務端,更改初始密碼為/root/.mysql_secret中的密碼(如果不一樣的話)' mysql -u root -p echo '使用/root/.mysql_secret中的密碼配置MySQL安全策略' mysql_secure_installation #No #密碼安全級別校驗 #y #是否更改當前密碼 #123456 #首次輸入密碼 #123456 #再次輸入密碼 #y #刪除任何人可訪問的隱匿賬號 #y #設定root賬戶可遠端訪問 #y #刪除當前測試資料庫 #y #立即重新整理許可權表,是當前配置立即生效 echo '使用新設定的密碼,登入myql服務端' mysql -u root -p
3.使用者操作的相關sql語句示例
-- 重新整理許可權配置 flush privileges; -- 修改使用者密碼 alter user 'root'@'%' identified by '123456'; -- 建立使用者 CREATE USER query@'%' IDENTIFIED BY '123456'; -- 給使用者賦許可權,可以查詢db_test的table_test表 GRANT SELECT ON db_test.table_test TO 'query'@'%'; GRANT SHOW VIEW ON db_test.table_test TO 'query'@'%'; -- 給使用者db_test的所有許可權 grant all privileges on db_test to query@'%'; -- 給使用者高階DBA管理MySQL中所有資料庫的許可權 grant all on *.* to query@’localhost’
二、解除安裝
#!/bin/bash echo '列印已安裝的MySQL包' rpm -qa | grep -i mysql echo '關閉MySQL服務' systemctl stop mysqld echo '按順序解除安裝MySQL包' rpm -e mysql-community-server-5.7.24-1.el7.x86_64 rpm -e mysql-community-client-5.7.24-1.el7.x86_64 rpm -e mysql-community-libs-5.7.24-1.el7.x86_64 rpm -e mysql-community-common-5.7.24-1.el7.x86_64 echo '檢視MySQL使用者及使用者組' more /etc/passwd | grep mysql more /etc/shadow | grep mysql echo '刪除MySQL使用者及使用者組' userdel -r mysql echo '列印已安裝的MySQL包' rpm -qa | grep -i mysql echo '查詢殘留的MySQL檔案及資料夾' find / -name mysql echo '【危險!】刪除所有名叫MySQL的檔案及資料夾' rm -rf /**/mysql rm -rf /**/*/mysql
可能遇到的問題
1.第三方庫衝突
安裝mysql資料庫時,需要rpm安裝libs,問題原因就是安裝libs時系統存在mariadb的系統包
rpm -ivh mysql-community-libs-8.0.18-1.el7.x86_64.rpm
#得到錯誤提示如下:
#warning: mysql-community-libs-8.0.18-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
#error: Failed dependencies:
#mariadb-libs is obsoleted by mysql-community-libs-8.0.18-1.el7.x86_64
#檢視系統中的mariadb
rpm -qa | grep mariadb
rpm -e mariadb-libs-5.5.44-2.el7.centos.x86_64
#得到錯誤提示如下:
#提示有第三方庫存在
#error: Failed dependencies:
#libmysqlclient.so.18()(64bit) is needed by (installed) postfix-2:2.10.1-7.el7.x86_64
#libmysqlclient.so.18(libmysqlclient_18)(64bit) is needed by (installed) postfix-2:2.10.1-7.el7.x86_64
#解決辦法強制刪除:
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
2.如果中途安裝失敗可能會遇到如下錯誤
#error: Failed dependencies:
# mysql-community-common(x86-64) >= 5.7.9 is needed by mysql-community-libs-5.7.36-1.el7.x86_64
# mariadb-libs is obsoleted by mysql-community-libs-5.7.36-1.el7.x86_64
#解決方案,執行如下命令
yum remove mysql-libs
#清除之前安裝過的依賴即可,最後重新安裝下。
3.缺少安裝mysql5.7所需要的依賴
yum -y install libaio
yum -y install net-tools
yum -y install perl
# 安裝順序
# common --> libs --> clients --> server
# 安裝命令
rpm -ivh mysql-community-common-5.7.19-1.el6.x86_64.rpm mysql-community-libs-5.7.19-1.el6.x86_64.rpm mysql-community-client-5.7.19-1.el6.x86_64.rpm mysql-community-server-5.7.19-1.el6.x86_64.rpm`