本地機(jī)器虛擬機(jī)裝mysql并連接
時(shí)間:2023-07-15 23:42:02 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)
時(shí)間:2023-07-15 23:42:02 來(lái)源:網(wǎng)站運(yùn)營(yíng)
本地機(jī)器虛擬機(jī)裝mysql并連接:最近女朋友金融專(zhuān)業(yè)找實(shí)習(xí),發(fā)現(xiàn)大多公司要求會(huì)sql,就尋找我的幫助。由于怕安裝sql導(dǎo)致電腦出現(xiàn)亂七八糟的問(wèn)題,我就想給他安裝虛擬機(jī),虛擬機(jī)里安裝Ubuntu,里邊運(yùn)行mysql作為服務(wù)器,使用時(shí)本地主機(jī)遠(yuǎn)程連接過(guò)去,等不用了虛擬機(jī)一關(guān)也沒(méi)有煩惱。想法很簡(jiǎn)單,但執(zhí)行起來(lái)發(fā)現(xiàn)還是有很多問(wèn)題的,本文就安裝順序來(lái)一步一步記錄整個(gè)過(guò)程,并給出一些注意事項(xiàng)和坑點(diǎn)。
安裝VMware、Ubuntu
這個(gè)部分沒(méi)有坑點(diǎn),搜索引擎搜一下,下載安裝就好了,注冊(cè)激活我也幫不上忙。我的版本是vmware 15.0,Ubuntu 20.04stl。
虛擬機(jī)安裝Ubuntu
直接導(dǎo)入ISO安裝包就好了,VMware會(huì)自動(dòng)識(shí)別。
這里的問(wèn)題是,Ubuntu安裝過(guò)程中會(huì)自動(dòng)下載語(yǔ)言包和各種程序包,但由于網(wǎng)絡(luò)問(wèn)題,很慢??梢栽谶M(jìn)度條右上角找到skip按鈕,跳過(guò)。
Ubuntu換源
由于眾所周知的原因,我們?cè)L問(wèn)網(wǎng)絡(luò)的速度不快,所以需要換一下軟件源。本站內(nèi)搜索Ubuntu換源就可以解決。給個(gè)參考連接 舟公:Ubuntu20.04軟件源更換。
安裝mysql
sudo apt-get install mysql
換源了肯定非??欤钡侥壳耙磺许樌?,安裝的版本是mysql 8.0。
登錄mysql
第一個(gè)坑點(diǎn)來(lái)了,登錄賬號(hào)和密碼是多少呢?經(jīng)過(guò)查詢(xún),apt-get安裝的mysql會(huì)給一個(gè)自帶的用戶(hù)名和隨機(jī)生成的密碼,具體使用以下命令進(jìn)行查看。參考鏈接[1]
sudo cat /etc/mysql/debian.cnf
輸入后可以看到幾行代碼,具體需要的是以下兩行
user = debian-sys-maintpassword = 24j7HYTEqgPv0Ozg
其中密碼這個(gè)是隨機(jī)生成的,每個(gè)人都不一樣,需要自行查看。
然后就可以用該用戶(hù)密碼登錄了
mysql -u debian-sys-maint -p
創(chuàng)建用戶(hù),修改權(quán)限
顯然我們不能用這個(gè)初始的用戶(hù)和密碼,太長(zhǎng)記不住。既然用來(lái)學(xué)習(xí),我用戶(hù)名root和密碼123456不過(guò)分吧。但這里邊還有好幾個(gè)坑,我慢慢來(lái)說(shuō)。參考鏈接[2]
- 用戶(hù)遠(yuǎn)程連接權(quán)限。一般用戶(hù)的連接權(quán)限是localhost的,也就是說(shuō)在虛擬機(jī)內(nèi)部用命令行可以登錄,但出了虛擬機(jī)用別的計(jì)算機(jī)遠(yuǎn)程登錄就失敗。
- 用戶(hù)認(rèn)證方式。這個(gè)可能跟我選的可視化軟件有關(guān),女朋友學(xué)習(xí)sql用的可視化軟件是sqlyog。mysql8.0采用‘caching_sha2_password’的方式來(lái)認(rèn)證密碼,但軟件不支持,需要換回以前的'mysql_native_password'方式。
1. 修改用戶(hù)遠(yuǎn)程連接權(quán)限
use mysql;update user set host='%' where user='root';
因?yàn)槲矣玫氖莚oot用戶(hù),已經(jīng)存在了,所以能直接修改。其中%就代表遠(yuǎn)程連接權(quán)限的意思。
如果是新建的話(huà),要使用以下命令:
create user '用戶(hù)名'@'%' identified by '密碼';
2. 修改用戶(hù)認(rèn)證方式
use mysql;alter user '用戶(hù)名'@'%' identified with mysql_native_password by '密碼';
對(duì)root修改密碼也可以在這一步進(jìn)行。
修改完成后用以下命令刷新修改起效。
flush privileges;
仍然不能連接
權(quán)限也給了,密碼也對(duì)了,按理來(lái)說(shuō)可以在本機(jī)連接成功了,但實(shí)際上還不可以。 經(jīng)查閱資料發(fā)現(xiàn),需要修改mysql的綁定地址。具體來(lái)說(shuō)是注釋 /etc/mysql/mysql.conf.d/mysqld.cnf 中的 bind-adress 127.0.0.1。參考鏈接[3]
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf#不會(huì)vi也沒(méi)事,一共就幾步操作#1. 直接按下 /bind-adress這些鍵,光標(biāo)定位到對(duì)應(yīng)位置,按回車(chē)#2. 按i進(jìn)入編輯模式,在行首輸入一個(gè)##3. 按esc鍵,然后按 :wq!這些鍵并回車(chē)。#隨后重啟mysql服務(wù)service mysql restart
到此為止,已經(jīng)能夠在本地電腦連接到虛擬機(jī)內(nèi)的mysql了。雖然這些東西網(wǎng)上都能找到,但比較零散,我就順手給整理了以下。
參考連接
[1]. Ubuntu apt 安裝MySQL的用戶(hù)名和密碼
[2]. mysql添加遠(yuǎn)程用戶(hù)并授權(quán)_m1f2c3的專(zhuān)欄-CSDN博客_mysql創(chuàng)建用戶(hù)并授權(quán)
[3]. 連接虛擬機(jī)中的MySQL數(shù)據(jù)庫(kù)_txl13109187932的博客-CSDN博客
[4].
https://zhuanlan.zhihu.com/p/142014944
關(guān)鍵詞:連接,機(jī)器,虛擬,本地