创建数据库
--创建名称为“ods”数据库,并设定编码集为utf8
CREATE DATABASE IF NOT EXISTS ods DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
新建用户
--创建了一个名为:app 密码为:123 的用户
create user 'app'@'localhost' identified by '123';
注意:
此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录。如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录。也可以指定某台机器可以远程登录。
查询用户
--查询用户
select user,host from mysql.user;
删除用户
--删除用户“app”
drop user app@localhost ;
--若创建的用户允许任何电脑登陆,删除用户如下
drop user app@'%';
密码重置
--方法1,终端操作
mysqladmin -uroot -proot password 123456
--方法2,密码实时更新;修改用户“app”的密码为“app”
set password for test = password('app');
--方法3,需要刷新;修改用户“app”的密码为“app”
update mysql.user set password = password('app') where user='app'
--刷新
flush privileges;
--方法4:在忘记root密码的时候,可以这样
以windows为例:
1. 关闭正在运行的MySQL服务。
2. 打开DOS窗口,转到mysql\bin目录。
3. 输入mysqld –skip-grant-tables 回车。–skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
4. 再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5. 输入mysql回车,如果成功,将出现MySQL提示符 >。
6. 连接权限数据库: use mysql; 。
6. 改密码:update user set password=password(“123”) where user=”root”;(别忘了最后加分号) 。
7. 刷新权限(必须步骤):flush privileges; 。
8. 退出 quit。
9. 注销系统,再进入,使用用户名root和刚才设置的新密码123登录。
用户授权
--授予用户test通过外网IP对数据库“ods”的全部权限
GRANT ALL PRIVILEGES ON `dm_base_test`.* TO `dm_jx`@`%`;
--刷新权限
flush privileges;
--授予用户“app”通过外网IP对于该数据库“ods”中表的创建、修改、删除权限,以及表数据的增删查改权限
GRANT Alter, Alter Routine, Create, Create Routine, Create Temporary Tables, Create View, Delete, Drop, Event, Execute, Grant Option, Index, Insert, Lock Tables, References, Select, Show View, Trigger, Update ON `dm_base_test`.* TO `dm_jx`@`%`;
查看用户
--查看用户“app”
SHOW GRANTS FOR `dm_jx`@`%`;
注意:修改完权限以后 一定要刷新服务,或者重启服务,刷新服务用:flush privileges;