任務查詢系統「主席樹+差分」
阿新 • • 發佈:2020-11-22
Linux安裝mysql
本次安裝Linux基於虛擬機器CentOS7和Ubuntu18.04
一.CentOS7安裝mysql
1.利用yum源來安裝。mysql版本5.7.14
yum-yinstallmysql57-community-release-el7-10.noarch.rpm
如果出現以下錯誤:
這是因為yum倉庫中沒有可用的mysql-server rpm包,可以執行如下命令進行下載
wget-i-chttp://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
下載成功:
下載mysql-server
yum-yinstallmysql-community-server
2.配置、啟動mysql
1.檢視mysql狀態
systemctlstatusmysqld
或
systemctlstatusmysqld.service
2.啟動mysql
systemctlstartmysqld
#然後繼續檢視mysql狀態是否啟動
systemctlstatusmysqld
3.檢視mysql初始密碼
mysql預設必須修改密碼之後才能操作資料庫
[root@centossoftware]#cat/var/log/mysqld.log|grep'password'
2020-11-23T03:24:57.885361Z1[Note]Atemporarypasswordisgeneratedforroot@localhost:TXgPuICyX8%k
4.登入資料庫
mysql-uroot-p
#然後輸入預設密碼TXgPuICyX8%k
5.修改資料庫登入密碼
mysql> alter user 'root'@'localhost' identified by 'root';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
報錯原因是密碼設定過於簡單,mysql有密碼設定的規範
密碼長度是由validate_password_length決定的,可以通過如下命令修改
set global validate_password_length=LOW;
檢視mysql密碼設定規範
SHOW VARIABLES LIKE 'validate_password%';
6.開啟mysql的遠端訪問
執行下面命令開啟遠端訪問限制(下面命令開啟的是IP是10.0.105.114,如果要開啟所有的,用%代替IP),mysql預設是拒絕遠端訪問的。
grant all privileges on *.* to 'root'@'10.0.105.114' identified by 'root' with grant option;
7.開啟防火牆埠,CentOS為firewalld新增開放埠3306
檢視防火牆是否開啟
systemctlstatusfirewalld
或
firewall-cmd--state
如果防火牆是關閉狀態,開啟防火牆
systemctlstartfirewalld
防火牆新增mysql開發埠3306
[root@centossoftware]#firewall-cmd--zone=public--add-port=3306/tcp--permanent
success
4.防火牆配置立即生效
[root@centossoftware]#firewall-cmd--reload
success
檢視防火牆所有開放的埠
[root@centossoftware]#firewall-cmd--zone=public--list-ports
3306/tcp
關閉開放埠
[root@centossoftware]#firewall-cmd--zone=public--remove-port=3306/tcp--permanent
success
需要重新載入防火牆配置,才能生效
firewall-cmd --reload
如果要開放的埠太多,可以直接關閉防火牆,當然,安全性自行評估
systemctlstopfirewalld
擴充套件
檢視監聽的埠
netstat-lnpt
檢查埠被哪個程序佔用,如:
[root@centossoftware]#netstat-lnpt|grep9200
tcp600:::9200:::*LISTEN1421/java
檢視程序的詳細資訊
[root@centossoftware]#ps1421
PIDTTYSTATTIMECOMMAND
1421?Sl1:01/usr/java/jdk1.8.0_241/bin/java-Xshare:auto-Des.networkaddress.cache.ttl=60-Des.networkaddress.cache.negative.ttl=10-XX:+AlwaysPreTouch-Xss1m-Djava.awt.headless=true-Dfil
3.設定編碼
vim/etc/my.cnf
增加如下程式碼
[client]
default-character-set=utf8
character-set-server=utf8
collation-server=utf8_general_ci
如圖:
重啟mysql
儲存my.conf檔案後,需要重啟mysql,然後輸入status檢視
#重啟mysql
systemctlrestartmysqld
登入進入mysql檢視
二.Ubuntu18.04安裝mysql
所有操作都是在root許可權下進行
1.從apt源下載mysql-server
#預設會自行安裝
aptinstall-ymysql-server
2.檢視是否安裝成功
netstat-tap|grepmysql
3.登入mysql
#預設是沒有密碼,直接按`enter`回車鍵,就可以直接進入
mysql-uroot-p
4.初始化資料庫
為了確保資料庫的安全性和正常執行,建議進行如下5個步驟的設定
安裝驗證密碼外掛 設定root管理員在資料庫中的登入密碼 刪除匿名賬戶,並使用root管理員從遠端登入資料庫,以確保資料庫上執行的業務的安全性 刪除預設的測試資料庫,取消測試資料庫的一系列訪問許可權 重新整理授權列表,讓初始化的設定立即生效
mysql_secure_installation
5.檢視mysql執行狀態
servicestatusmysql
6.設定mysql可以遠端訪問
#預設只允許本機訪問
vim/etc/mysql/mysql.conf.d/mysqld.cnf
#註釋掉bind-address=127.0.0.1
7.進行授權
修改完上述配置檔案,再次進入mysql資料庫,進行授權
#執行下面命令開啟遠端訪問限制(下面命令開啟的是IP是10.0.105.114,如果要開啟所有的,用%代替IP),mysql預設是拒絕遠端訪問的。
mysql> grant all on *.* to root@'10.0.105.114' identified by 'root' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges; #重新整理許可權
Query OK, 0 rows affected (0.00 sec)
8.重啟mysql
systemctlrestartmysqld
9.驗證本地訪問遠端mysql
至此已完成mysql在CentOS7和Ubuntu18.04不同系統的搭建!!!!