一、MySQL安裝(rpm安裝)
1、檢查沒有安裝過mysql或mariadb
rpm -qa | grep -i mysql rpm -qa | grep -i mariadb |
返回空值的話,就說明沒有安裝 MySQL。注意:在新版本的CentOS7中,默認的數據庫已更新為了Mariadb,而非 MySQL,所以執行yum install mysql 命令只是更新Mariadb數據庫,并不會安裝 MySQL。
2、卸載已安裝的 Mariadb 數據庫(如果有安裝時才進行卸載)
rpm -e postfix-2:2.10.1-7.el7.x86_64 rpm -e mariadb-libs-5.5.64-1.el7.x86_64 |
或者
yum remove mysql-libs |
3、再次查看已安裝的 Mariadb 數據庫版本,確認是否卸載完成
rpm -qa | grep -i mysql rpm -qa | grep -i mariadb |
4、安裝libaio、perl、net-tools庫,要不就會報錯
yum -y install libaio perl net-tools |
此步驟需聯網
5、安裝MySQL
建目錄存放解壓文件
?mkdir -p /opt/module/MySQL-5.7.30 |
解壓縮
tar -xvf mysql-5.7.30-1.el7.x86_64.rpm-bundle.tar -C /opt/module/MySQL-5.7.30 |
cd /opt/module/MySQL-5.7.30 |
開始安裝,-ivh 其中i表示安裝,v表示顯示安裝過程,h表示顯示進度
必須依次安裝,因為其中有依賴,不然各種莫名的bug
rpm -ivh mysql-community-common-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.30-1.el7.x86_64.rpm
6. 啟動MySQL
啟動mysqld服務
? ? ? ?systemctl start mysqld
下面列出其余systemctl命令(不用運行) 查看mysqld服務狀態
? ? ? systemctl status mysqld
停止mysqld服務
? ??systemctl stop mysqld
重新啟動mysqld服務
? ? systemctl restart mysqld
配置mysqld開機自動啟動
? ? systemctl enable mysqld
配置mysqld開機不自動啟動
? ? ?systemctl disable mysqld
7. 登錄MySQL修改密碼
?查詢生成的臨時密碼
? ?grep "password" /var/log/mysqld.log
登錄mysql
? ? ?mysql -uroot -p
? ??//Enter password: (輸入查詢到的臨時密碼)
因為是練習環境,所以想把密碼改的簡單點
設置密碼校驗策略(0 or LOW),要不密碼太LOW不讓你過:
? ? ? ?set global validate_password_policy=0;
設置密碼校驗長度,要不密碼太短不讓你過:? ?
? ? ? set global validate_password_length=6;
設置常用的很low的密碼:
? ? ? set password = password("123456");
退出,試試用新密碼重新登錄
? ? ?quit
8.? 配置遠程連接
配置只要是root用戶+密碼,在任何主機上都能登錄MySQL數據庫
進入MySQL,用新密碼登進去試試
? ? ??mysql -uroot -p
顯示數據庫
? ? show databases;
使用mysql數據庫
? ? use mysql;
展示mysql數據庫中的所有表
? ? show tables;
展示user表的結構
? ? ?desc user;
修改user表,把Host表內容修改為%
? ? ?update user set host='%' where host='localhost';
刪除root用戶的其他host
? ? ??delete from user where Host='hadoop100';
? ? ? delete from user where Host='127.0.0.1';
? ? ? delete from user where Host='::1';
刷新生效
? ? ? flush privileges;
退出
? ? ??quit;
9 . 再次配置遠程連接
? ? 用新密碼登進去試試
? ? ?mysql -uroot -p
? ? 授權 所有權限(all),所有數據庫(*.*) 給 用戶名(root),任何主機(%),密碼
(yourpassword)
yourpassword密碼是在hive-site.xml等配置文件中已經設置好了的
? ? ?grant all privileges on *.* to 'root'@'%' identified by 'yourpassword' with grant option
刷新權限使其立即生效
? ? flush privileges;
退出MySQL?
? ? ?quit