centos7 yum 安裝 mysql 以及遠程連接

centos7 裏面是默認安裝了mariadb的
要yum 安裝mysql 先處理下mariadb
列出有關mariadb的所有rpm包文件
rpm -qa | grep mariadb
如果有,會有文件名顯示出來,接着卸載掉
rpm -e 文件名(上面查出來的文件名)
rpm -e --nodeps 文件名強制卸載

mysql下載地址:https://www.mysql.com/
這裏我們選擇的安裝方式是yum安裝,所以按步驟來下載安裝包
選擇download----mysql yum repository
在這裏插入圖片描述
頁面下面可以看到如下:
點擊download
紅色方框的英文,建議自己翻譯看下(如果你可以一眼掃過看懂的話,當我沒說 ^ ^)
默認就是8.0版本的,如果要安裝其他版本,後面會說到
在這裏插入圖片描述
進入下載頁面後,看到如下:
在這裏插入圖片描述
右鍵 紅色方框位置, 複製鏈接,下面是我的鏈接
https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

簡單麼,小白都會了!centos下,wget下載

 wget https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm

下載完成後 查看下當前目錄,可以看到你下載的包文件
在這裏插入圖片描述
接下來怎麼做, 很關鍵,看教程~~~
這是官方的文檔教程:
https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html
在這裏插入圖片描述
上面紅色方框已經告訴你了,mysql yum 安裝!
接下來怎麼做估計你是肯定會了的!
命令就是 yum localinstall後面跟你的包文件名

yum localinstall mysql80-community-release-el7-2.noarch.rpm

在這裏插入圖片描述
查看一下是否添加成功(mysql yum 存儲 添加到本地存儲列表)

yum repolist enabled | grep "mysql.*-community.*"

在這裏插入圖片描述
如果失敗則是什麼都沒有的,添加成功如下:
在這裏插入圖片描述
接下來就是安裝了,需要選擇一下版本
直接上圖:
在這裏插入圖片描述
看不懂也沒事,能看懂下劃線那部分吧 /etc/yum.repos.d/mysql-community.repo這個文件你記住就行
我們直接編輯這個文件vi /etc/yum.repos.d/mysql-community.repo

在這裏插入圖片描述
這裏我選擇的是5.7,enabled=1,把之前的 8.0下面的enabled=1改成了0
如果你直接跳過這步,直接進行下面的安裝,那就是默認8.0版本了(文檔說的,絕對不會錯)
(叫你們天天百度不看文檔~!)

在這裏插入圖片描述
安裝命令:如果出現選擇你懂的~ 按y即可

yum install mysql-community-server

或者自動安裝也行 install 後面加 -y 參數
啓動mysql服務以及查看狀態
在這裏插入圖片描述
安裝完成後默認應該是服務已經啓動的,
我們直接查看下狀態,下面的命令都可以查看狀態:

service mysqld status
systemctl status mysqld.service

如下圖表示成功了:
在這裏插入圖片描述
到此mysql yum安裝完成(什麼,進不了數據庫,密碼是多少??? 看文檔~~~~)
在這裏插入圖片描述
輸入如下命令:
grep 'temporary password' /var/log/mysqld.log
在這裏插入圖片描述
root@localhost: 後面就是臨時密碼~ 如果。。。。
什麼,居然什麼都沒有。。。
如果輸入上面的命令,什麼都沒發生,操作如下
rm -rf /var/lib/mysql刪除之前的殘留數據
systemctl restart mysqld重啓服務
再次查看:
grep 'temporary password' /var/log/mysqld.log

接下來進入mysql 並修改一下密碼

mysql -uroot -p

輸入上面的密碼
在這裏插入圖片描述
必須要先修改密碼,才能做其他操作
ALTER USER 'root'@'localhost' IDENTIFIED BY '這裏是你的密碼-大哥你懂的';
如果有如下提示,說明密碼設置失敗,密碼安全級別不夠,也就是密碼不夠複雜
(validate_password實現的默認密碼策略要求密碼包含至少一個大寫字母、一個小寫字母、一個數字和一個特殊字符,並且總密碼長度至少爲8個字符。)
在這裏插入圖片描述
如果要關閉密碼安全級別設置:
vi /etc/my.cnf
加入化紅線的那行代碼:validate_password = off在這裏插入圖片描述
保存退出後,重啓下服務
再次查看密碼
grep 'temporary password' /var/log/mysqld.log
進入mysql修改密碼:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password'密碼自己設置
修改成功會有成功字眼返回:

Query OK, 0 rows affected (0.00 sec)

接下來是一些配置
在mysql中輸入

show variables like '%validate_password%';

在這裏插入圖片描述
需要繼續修改一下配置文件直到看到如下:
在這裏插入圖片描述
vi /etc/my.cnf打開這個配置文件加入一些配置,大致內容如下,註釋不用管

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
character_set_server=utf8

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

validate_password = off

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

在這裏插入圖片描述
保存退出,重啓服務,再次進入mysql
show variables like '%character%';
可以看到如下圖
在這裏插入圖片描述
遠程訪問
允許root用戶遠程連接數據庫(這裏遠程連接密碼和本地密碼是可以不一樣的)
本地登錄mysql後,輸入命令如下:
use mysql;(指定一下要用的數據庫,如果省略當前指令,在下面的指令前加 -A)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
該指令會在mysql數據庫的user 表中添加一條記錄,後面可以看到
接着更新下授權表的記錄:
FLUSH PRIVILEGES;

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select host,user from user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+
3 rows in set (0.00 sec)

在這裏插入圖片描述
此時root是可以遠程連接數據庫了的,密碼就是上面的密碼,你設置的
本地登錄的話,密碼是不變的
成功後做下遠程連接測試,下面是我本地 Navicat for mysql 遠程到虛擬機上數據庫的截圖
可以看到user表裏面是多了一個Host記錄的,用戶是root, % 就是遠程訪問了
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章