집 >운영 및 유지보수 >리눅스 운영 및 유지 관리 >Linux에서 MySQL 데이터베이스를 안전하게 구성하는 방법
이 글의 내용은 Linux에서 MySQL 데이터베이스를 안전하게 구성하는 방법을 소개하는 것입니다. 참고할 만한 가치가 있으니 도움이 필요한 분들에게 도움이 되길 바랍니다.
디렉토리:
1.mysql 관리자 계정 루트의 비밀번호 수정(2가지 방법)
2.mysql 관리자 계정 루트 수정
3. Mysql 관리자 루트 계정 비밀번호 분실 해결 방법(2가지 방법)
4.데이터베이스 사용자 생성(3가지 방법)
5.mysql 데이터베이스 권한 관리
로컬 권한
네트워크 권한
방법 1 사용: 쉘 명령
mysqladmin -u root -p password "123"
2. 비밀번호가 저장된 테이블을 봅니다
방법 2: mysql 데이터베이스 명령
mysql>use mysql; mysql>update user set password=password('123') where user='root' and host='localhost'; mysql> FLUSH PRIVILEGES; #刷新
비밀번호 변경 성공 여부 테스트
2. mysql 관리자 계정 루트 수정
update mysql.user set user="admin" where user="root" and host="localhost"; flush privileges;
Test
3. mysql 관리자 루트 계정 비밀번호를 잊어버리는 방법
하나:
killall -TERM mysqld mysqld_safe --skip-grant-tables & mysql -u admin mysql>update user set password=password('123456') where user='admin' and host='localhost'; mysql> FLUSH PRIVILEGES; MySQL> quit
MySQL을 다시 시작하고, 새 비밀번호로 로그인
새 비밀번호를 설정하고 변경사항을 새로 고치세요
mysqld 서비스를 테스트하고 다시 시작하세요. 새 비밀번호로 로그인하세요
방법 2:
/etc 수정 /나. cnf
[Mysqld] 아래에 추가:
skip-grant-tablesMySQL 서비스 다시 시작
+ nf delete Skip-grant-tables
MySQL을 다시 시작하고 새 비밀번호로 로그인
4. 데이터베이스 사용자 만들기
방법 1:
mysql -u root mysql>update user set password=password('123') where user='admin' and host='localhost'; mysql> FLUSH PRIVILEGES; MySQL> quit
방법 2:
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'yuzly';
方法三:通过新用户授权创建数据库用户
五、权限管理
本地权限
1.创建一个zhang用户,只给select权限,然后查看权限
2.登录zhang用户,mysql -uzhang -pyuzly测试,创建一个表,下图显示被拒绝,当前账户没有create权限
3.登录管理员账户,给zhangsan账户添加create权限
4.重新登录zhangsan账户,测试是否具有create权限,下图说明具有create权限
5.插入一条数据,下图提示没有insert权限
6.登录管理员账户,给zhangsan账户添加insert权限
7.重新登录zhangsan账户,测试是否具有insert权限,下图说明具有insert权限
8.创建的新用户,默认没有任何权限,下图可以看到创建的用户默认是没有任何权限的
9.登录新创建的用户mysql -uabcd -pyuzly,测试,下图可以看到abcd没有select等权限,用show只能查看mysql系统自带的东西,别的用户创建的数据库等看不到
远程连接权限
1.创建一个账户,赋予远程登录权限
grant all on userdb.* to 'abc'@'10.10.10.200' identified by 'yuzly';
flush privileges;
2.测试,从另一台Linux的Mysql客户端登录验证
3.下图可以看到,abc用户对userdb数据库具有任何权限,但对别的数据库没有任何权限,例如mysql.user
4.远程连接限制一个网段
5.测试
撤销权限
revoke all on userdb.* from 'zhangsan'@'localhost';
测试,撤消zhangsan账户的权限是否生效
删除账户
delete from mysql.user where user="aaa" and host="localhost";
相关视频教程推荐:《MySQL教程》
以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!
위 내용은 Linux에서 MySQL 데이터베이스를 안전하게 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!