deepin卸载mysql并安装设置mysql5.7
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:
如果您觉得我的文章对您有帮助,可以扫码领取下红包,谢谢!