数据库的显示、创建、使用 、用户授权管理及忘记root用户后重置密码

时间:2023-03-09 04:14:33
数据库的显示、创建、使用 、用户授权管理及忘记root用户后重置密码

1、显示数据库

show databases;

  默认的数据库及大致功能:

  mysql -- 用户权限 相关数据

  test --用于用户测试数据

  information_schema -MySQL 本身架构相关的数据

2、创建数据库

create database 数据库名称  default charset utf8 collate utf8_general_ci ;

3、使用数据库

use db_name;

4、用户管理

 -- 创建用户
create user '用户名@''ip地址' identified by '密码'
eg:
CREATE user 'jack'@'127.0.0.1' IDENTIFIED by '';
-- 删除用户
drop user '用户名'@'ip地址';
eg:
drop user 'jack'@'127.0.0.1';
-- 修改用户
rename user '用户名'@'ip地址' to '新用户名'@'ip地址';
eg:
rename user 'tiger'@'127.0.0.1' to 'marry'@'127.0.0.2';
-- 修改密码
set password for '用户名'@'ip地址' =Password('新密码')
eg:
set password for 'marry'@'127.0.0.2'=Password('hello,marry');

5、授权管理

 -- 显示某用户的权限
show grant for '用户'@'127.0.0.1';
-- 将某张表授权给某用户进行管理
grant 权限 on 数据库.表 to '用户'@'127.0.0.1';
-- 移除权限
revoke 权限 on 数据库.表 from '用户'@'ip地址'

6、更改立即生效

-- 将数据读取到内存中,立即生效
flush privileges;

7、忘记root 密码后进行重置密码的操作

1进入my.ini文件
2在[mysqld]下面添加
skip-grant-tables
3 重新启动mysql
net stop mysql
  net start mysql
3 -- 客户端
4 mysql -u root -p
5 -- 修改用户名密码
6 update mysql.user set authentication_string=password('') where user='root';
7 flush privileges;

修改结束后请还原my.ini 去掉[mysqld] 下面添加的skip-grant-tables