一、背景

之前待的几个公司,数据库、服务器权限都是给所有后端直接拉满的,但也会出现员工离职的情况,每次有人离职时都需要改数据库密码、服务器密码。

每次密码修改后得告知所有开发修改本地密码,但这样的事情也不是经常发生,公司虽小但很稳定。

假设你所待的公司是一个开发非常多的公司,有可能你待了一年还没认识全,人员流动的速度也非常快,这时上面那种方案的执行成本就非常高了。

若此时把这个问题抛给你,让你解决你会有什么方案?

接下来给大家介绍两种方案,一种传统方案另一种是通过SSH来实现的。

二、传统方案

MySQL版本:8.0.26

其中最简单的方案就是给每个人在数据库添加一个账号,具体步骤如下:

创建新用户

createuser "kaka"@"%" identifiedby 'qwerty123456';
复制代码

其中kaka为自定义的用户名;%为登录域名,host为'%'时表示为 任意IP,为localhost时表示本机,或者填写指定的IP地址;qwerty123456为密码

为用户授权

grantall privilegeson kaka.*to "kaka"@"%"withgrant option;

或

grantallon *.*to "kaka"@"%";
复制代码

其中kaka.*,kaka为数据名,*为所有表,如果想授权全部表就把kaka.*写成*.*,当然这里是以开发库为基础的,所有的权限都得给。当前也可以给予部分权限。

刷新权限

flush privileges;
复制代码

使用用户名:kaka进行登录

发现kaka用户只有两个库,kaka库就是授权的库,当切换系统库时发现是没有权限的。