linux安裝MySQL之rpm包
目前瞭解在linux下安裝mysql有兩種方式:1、rpm包安裝;2、原始碼包安裝;
目前使用的是rpm包安裝:
環境:CentOS7(CentOS-7-x86_64-DVD-1804);mysql 5.6.42
1、下載rpm包
https://dev.mysql.com/downloads/mysql/5.6.html#downloads
2、建立mysql使用者和組
#建立組
groupadd mysql
#建立使用者
adduser -g mysql mysql
3、將安裝包放置某個路徑,如現將其放在/home/mysql下,並進行解壓
解壓:
tar -xvf xxx
4、安裝
1。安裝前檢查是否已經有安裝包
#檢查mysql
rpm -qa | grep -i mysql
#檢查mariadb,據說centos7以上是該包
rpm -qa | grep -i mararia*
#如以上均有,則刪除
yum -y remove xxx
要不然centos7以上的在安裝時可能會報:
mariadb-libs is obsoleted by MySQL-shared-compat-5.6.42-1.el7.x86_64
2。可能遇到問題
在使用rpm安裝的過程可能會出現提示某些依賴包不存在,如提示:
error: Failed dependencies: /usr/... perl ..... net-tools ...
則需要安裝perl和net-tools:
yum -y install perl
yum -y install net-tools
注意,雖然這樣安裝了perl和net-tools,但是可能還有個perl的依賴沒有裝,則使用rpm安裝時報錯:
error: Failed dependencies:
/usr/...perl....
則需要安裝autoconf:
yum -y install autoconf
3。安裝
基本的需求只要安裝這幾個包即可,其他的按需求裝:
檢查安裝情況:
rpm -qa | grep -i mysql
如果在安裝過程中沒出現其他的報錯,則安裝MySQL成功。
4、啟動前準備、啟動、檢查、登入
1。將mysql的配置檔案拷貝到/etc目錄下
cp/usr/share/mysql/my-default.cnf /etc/my.cnf
2。啟動mysql:
#初始化(需要)
./usr/bin/mysql_install_db
#啟動mysql服務
service mysql start
3。mysql在安裝成功後會給root使用者一個預設密碼,檢視記錄,在初始登入時使用。
#檢視初始化的密碼
cat /root/.mysql_secret
4。使用上一步獲得的密碼登入
#首次登入
mysql -uroot -p初始化密碼
更改初始化密碼
方式1 (已驗證)- 登入到mysql:
mysql > set password=password("新密碼")
即可修改成功,並使用。
方式2(未驗證):
mysqladmin -u使用者名稱 -p舊密碼 password 新密碼
5、遠端連線mysql
首先ping一下兩個終端是否通。ping通的情況:
如果在上述整完後,遠端連線mysql,則會報錯:
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.xx.xx' (10060)
解決:
1。授權遠端終端登入
登入mysql後:
GRANT ALL PRIVILEGES ON *.* TO 'itoffice'@'%' IDENTIFIED BY 'itoffice' WITH GRANT OPTION;
itoffice:使用者名稱; % 表示授權全部終端(ping的通)可連線,也可將其改為具體ip;itoffice:登入密碼。
檢查可遠端連線的使用者:
SELECT host,user FROM mysql.user;
#或者
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
此時需要flush一下
mysql > flush privileges;
2。關閉防火牆
檢視防火牆狀態:
#centos6.x
chkconfig iptables off
#centos7.x
systemctl stop firewalld
關閉防火牆:
#永久
[[email protected] ~]# service iptables stop
上述完之後,即可遠端連線。
6、如果還不能遠端連線。試著改或加入以下
報:ERROR 2003 (HY000)…
1。mysql的my.cnf檔案中修改或新增(不知道位置:find / -name my.cnf)
bind-address = 127.0.0.1 #這裡預設監聽本地localhost
改為
bind-address = 0.0.0.0 #監聽全部地址
2。將3306埠新增到iptables中
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT