mysql完全卸載以及安全安裝
完全卸載
sudo apt purge mysql-*
sudo rm -rf /etc/mysql/ /var/lib/mysql
sudo apt autoremove
安全安裝
sudo apt-get install mysql-client mysql-server
#檢查mysql是不是在運行
sudo service mysql status
#執行安全安裝
sudo mysql_secure_installation
PS:
安全安裝會刪除測試表以及匿名訪問用戶,以及確定密碼強度檢測插件安裝,設置root密碼等操作,詳細情況建議按照提示操作.
啟動mysql
sudo /etc/init.d/mysql restart #重啟mysql服務
sudo service mysql status #查看mysql運行狀況
創建新用戶登錄mysql
設置root
密碼之后,依然無法在linux
非root
賬戶下登錄mysql
.
mysql -uroot -p
#ERROR 1698 (28000): Access denied for user 'root'@'localhost'
此時需要登錄linux
的root
賬戶,登錄mysql
:
mysql -uroot -p
#輸入`mysql root`賬戶密碼,登錄mysql
mysql
操作:
#創建新用戶
mysql> CREATE USER 'DBTester'@'localhost' IDENTIFIED BY 'yourPassword';
#創建數據庫
mysql> create database TEST;
#賦予用戶權限
grant all privileges on TEST.* to 'DBTester'@'localhost';
注意,設置的用戶只能在本地進行訪問.
'%' - 所有情況都能訪問;
‘localhost’ - 本機才能訪問;
’111.222.33.44‘ - 指定 ip 才能訪問.
注意權限,為圖省事,設置了所有操作權限.
all 可以替換為 select,delete,update,create,drop.
linux
普通賬戶登錄mysqlroot
賬戶
#linux登錄至root賬戶
#登錄mysql root賬戶
mysql -uroot -p
#使用mysql數據庫
use mysql;
#查看密碼插件,會發現現階段root賬戶對應插件是auth_socket
select user,host,plugin,authentication_string from mysql.user;
#更換密碼插件至mysql_native_password
update user set authentication_string="123" where user="root";
#注意,此時需要設置密碼(使用以下語句可見密碼為空)
select user,host,plugin,authentication_string from mysql.user;
#設置root賬戶密碼
update user set password=password("yourpassword") where user="root";
flush privileges;
exit
現在重啟mysql
服務即可在普通賬戶登錄mysql
.
用戶角色未更新
mysql> flush privilege;
在操作mysql
庫做用戶的增刪修改的時候,操作完畢的時候最好使用flush privilege
命令刷新一下權限。否則可能會修改不生效.
無密碼登錄
#關閉mysql服務
service mysqld stop
#設置無密碼登錄
mysqld_safe --skip-grant-tables &
#啟動mysql服務
/etc/init.d/mysql start
#無密碼登錄mysql
mysql
springboot
設置
# mysql配置
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/yourDatabase
spring.datasource.username=ITSM
spring.datasource.password=yourPassword
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.jpa.open-in-view=false
參考博文:
參考(https://www.cnblogs.com/super-zhangkun/p/9435974.html)
PS:
如果您覺得我的文章對您有幫助,可以掃碼領取下紅包,謝謝!