一、 MySQL安裝
對於MySQL資料庫的安裝,我們將要使用第二種安裝方式rpm進行安裝。那麼首先我們瞭解一下什麼是RPM?
RPM:全稱為 Red-Hat Package Manager,RPM軟體包管理器,是紅帽Linux用於管理和安裝軟體的工具。
MySQL資料庫的安裝,主要的步驟如下:
1). 檢測當前系統是否安裝過MySQL相關資料庫
需要透過rpm相關指令,來查詢當前系統中是否存在已安裝的mysql軟體包,執行指令如下:
rpm -qa 查詢當前系統中安裝的所有軟體 rpm -qa | grep mysql 查詢當前系統中安裝的名稱帶mysql的軟體 rpm -qa | grep mariadb 查詢當前系統中安裝的名稱帶mariadb的軟體
透過rpm -qa 查詢到系統透過rpm安裝的所有軟體,太多了,不方便檢視,所以我們可以透過管道符 | 配合著grep進行過濾查詢。
透過查詢,我們發現在當前系統中存在mariadb資料庫,是CentOS7中自帶的,而這個資料庫和MySQL資料庫是衝突的,所以要想保證MySQL成功安裝,需要解除安裝mariadb資料庫。
2). 解除安裝現有的MySQL資料庫
在rpm中,解除安裝軟體的語法為:
rpm -e --nodeps 軟體名稱
那麼,我們就可以透過指令,解除安裝 mariadb,具體指令為:
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
我們看到執行完畢之後, 再次查詢 mariadb,就查不到了,因為已經被成功解除安裝了,如下圖:
3). 將MySQL安裝包上傳到Linux並解壓
A. 上傳MySQL安裝包
我們需要將MySQL的安裝包上傳到Linux系統的根目錄 / 下面。
B. 解壓到/usr/local/mysql
執行如下指令:
mkdir /usr/local/mysql tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz -C /usr/local/mysql
解壓後得到6個RPM的安裝包檔案,如下圖:
4). 按順序安裝rpm安裝包
有安裝順序,需要按順序安裝:
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm yum install net-tools rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
如圖:
圖2安裝依賴;
說明:
- 因為rpm安裝方式,是不會自動處理依賴關係的,需要我們自己處理,所以對於上面的rpm包的安裝順序不能隨意修改。
- 安裝過程中提示缺少net-tools依賴,使用yum安裝(yum是一種線上安裝方式,需要保證聯網)
二、 MySQL啟動
1.MySQL安裝完成之後,會自動註冊為系統的服務,服務名為mysqld。那麼,我們就可以透過systemctl指令來檢視mysql的狀態、啟動mysql、停止mysql。
systemctl status mysqld 檢視mysql服務狀態
systemctl start mysqld 啟動mysql服務
systemctl stop mysqld 停止mysql服務
說明:
可以設定開機時啟動mysql服務,避免每次開機啟動mysql。執行如下指令:
systemctl enable mysqld
2.我們可以透過如下兩種方式,來判定mysql是否啟動:
netstat -tunlp 檢視已經啟動的服務 netstat -tunlp | grep mysql 檢視mysql的服務資訊 ps –ef | grep mysql 檢視mysql程序 命令解釋: A. netstat命令用來列印Linux中網路系統的狀態資訊,可讓你得知整個Linux系統的網路情況。 引數說明: -l或--listening:顯示監控中的伺服器的Socket; -n或--numeric:直接使用ip地址,而不透過域名伺服器; -p或--programs:顯示正在使用Socket的程式識別碼和程式名稱; -t或--tcp:顯示TCP傳輸協議的連線狀況; -u或--udp:顯示UDP傳輸協議的連線狀況; B. ps命令用於檢視Linux中的程序資料。
三、 MySQL登入
1.查閱臨時密碼
MySQL啟動起來之後,我們就可以測試一下登入操作,但是我們要想登入MySQL,需要一個訪問密碼,而剛才在安裝MySQL的過程中,並沒有看到讓我們設定訪問密碼,那這個訪問密碼是多少呢? 那實際上,對於rpm安裝的mysql,在mysql第一次啟動時,會自動幫我們生成root使用者的訪問密碼,並且輸出在mysql的日誌檔案 /var/log/mysqld.log中,我們可以檢視這份日誌檔案,從而獲取到訪問密碼。
可以執行如下指令:cat /var/log/mysqld.log | grep password
我們可以透過上述指令,查詢日誌檔案內容中包含password的行資訊。
2.登入MySQL修改密碼
獲取到root使用者的臨時密碼之後,我們就可以登入mysql資料庫,修改root的密碼,為root設定一個新的密碼。並且我們還需要開啟root使用者遠端訪問該資料庫的許可權,這樣的話,我們就可以在windows上來訪問這臺MySQL資料庫。執行如下指令:
①. 登入mysql(複製日誌中的臨時密碼登入) mysql -uroot -p ②. 修改密碼 set global validate_password_length=4; 設定密碼長度最低位數 set global validate_password_policy=LOW; 設定密碼安全等級低,便於密碼可以修改成root set password = password('root'); 設定密碼為root ③. 開啟訪問許可權 grant all on *.* to 'root'@'%' identified by 'root'; flush privileges;
操作完上述的指令之後,資料庫root使用者的密碼以及遠端訪問我們就配置好了,接下來,可以執行exit退出mysql,再次透過新的密碼進行登入。
3.Windows遠端訪問MySQL
當然我們也可以使用安裝在windows系統中的sqlyog或者Navicat來遠端連線linux上的MySQL。 要想在windows上能夠訪問MySQL,還需要開放防火牆的3306埠,
執行如下指令:
firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload