`
leon.s.kennedy
  • 浏览: 109024 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

MySql用户创建、授权以及删除

 
阅读更多

综合网上知识及解决方案,总结如下:

一, 创建用户:

       命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';

       说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.

      例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';
               CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
               CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
               CREATE USER 'pig'@'%' IDENTIFIED BY '';
               CREATE USER 'pig'@'%';

二,授权:

      命令:GRANT privileges ON databasename.tablename TO 'username'@'host'

     说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.

      例子: GRANT SELECT, INSERT ON test.user TO 'pig'@'%';
               GRANT ALL ON *.* TO 'pig'@'%';

      注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:
           GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

三.设置与更改用户密码

     命令:SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");

      例子: SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");

四.撤销用户权限

      命令: REVOKE privilege ON databasename.tablename FROM 'username'@'host';

     说明: privilege, databasename, tablename - 同授权部分.

      例子: REVOKE SELECT ON *.* FROM 'pig'@'%';

      注意: 假如你在给用户'pig'@'%'授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO 'pig'@'%', 则在使用REVOKE SELECT ON*.* FROM 'pig'@'%';命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON *.* TO 'pig'@'%';则REVOKE SELECT ON test.user FROM 'pig'@'%';命令也不能撤销该用户对test数据库中user表的Select 权限.

      具体信息可以用命令SHOW GRANTS FOR 'pig'@'%'; 查看.

五.删除用户

      命令: DROP USER 'username'@'host';

附表:在MySQL中的操作权限

 

ALTER

Allows use of ALTER TABLE.

ALTER ROUTINE

Alters or drops stored routines.

CREATE

Allows use of CREATE TABLE.

CREATE ROUTINE

Creates stored routines.

CREATE TEMPORARY TABLE

Allows use of CREATE TEMPORARY TABLE.

CREATE USER

Allows use of CREATE USERDROP USERRENAME USER, and REVOKE ALL PRIVILEGES.

CREATE VIEW

Allows use of CREATE VIEW.

DELETE

Allows use of DELETE.

DROP

Allows use of DROP TABLE.

EXECUTE

Allows the user to run stored routines.

FILE

Allows use of SELECT..INTO OUTFILE and LOAD DATA INFILE.

INDEX

Allows use of CREATE INDEX and DROP INDEX.

INSERT

Allows use of INSERT.

LOCK TABLES

Allows use of LOCK TABLES on tables for which the user also has SELECT privileges.

PROCESS

Allows use of SHOW FULL PROCESSLIST.

RELOAD

Allows use of FLUSH.

REPLICATION

Allows the user to ask where slave or master

CLIENT

servers are.

REPLICATION SLAVE

Needed for replication slaves.

SELECT

Allows use of SELECT.

SHOW DATABASES

Allows use of SHOW DATABASES.

SHOW VIEW

Allows use of SHOW CREATE VIEW.

SHUTDOWN

Allows use of mysqladmin shutdown.

SUPER

Allows use of CHANGE MASTERKILLPURGE MASTER LOGS, and SET GLOBAL SQL statements. Allows mysqladmin debug command. Allows one extra connection to be made if maximum connections are reached.

UPDATE

Allows use of UPDATE.

USAGE

Allows connection without any specific privileges.


http://hi.baidu.com/fwso/blog/item/658c00555bdd1cc5b645aee0.html

mysql新建用户 本地无法登录:
其中两个账户有相同的用户名monty和密码some_pass。两个账户均为超级用户账户,具有完全的权限可以做任何事情。一个账户 ('monty'@'localhost')只用于从本机连接时。另一个账户('monty'@'%')可用于从其它主机连接。请注意monty的两个账户必须能从任何主机以monty连接。没有localhost账户,当monty从本机连接时,mysql_install_db创建的localhost的匿名用户账户将占先。结果是,monty将被视为匿名用户。原因是匿名用户账户的Host列值比'monty'@'%'账户更具体,这样在user表排序顺序中排在前面。 
这段话说的很清楚,因此执行 grant select,insert,update,delete on test.* to appadmin@"localhost" identified by "password"; 

自己的脚本:
-------------------------------------------------------------------------
创建用户名为admin 密码admin 该用户可以从任意远程主机登陆,使用通配符%
create user 'admin'@'%' identified by 'admin';

创建admin用户为localhost本地登录(与上面权限一样)
create user 'admin'@'localhost' identified by 'admin';

授予所有的权限ALL 数据库名为bhcmis 给admin用户
注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

grant ALL privileges on bhcmis.* to 'admin'@'%'; 

防止本机localhost登录不了,原因mysql.user表中 先读取localhost数据
grant ALL privileges on bhcmis.* to 'admin'@'localhost';
分享到:
评论

相关推荐

    MySQL创建数据库与创建用户以及授权

    1、create schema [数据库名称] default character set utf8 collate utf8_general_ci;--创建数据库 ...MySQL创建数据库与创建用户以及授权相关SQL语句,摘自博客http://www.cnblogs.com/janken/p/5500320.html

    MySQL用户管理和用户授权详解.pdf

    本文将详细介绍MySQL中的用户管理,包括创建用户、查看用户信息、重命名用户、删除用户以及修改密码,以及用户授权的相关操作,如授予权限、查看权限和撤销权限。 ### 用户管理 1. **新建用户**: 使用`CREATE ...

    Mysql用户及授权

    MySQL中的用户管理和授权是数据库系统安全的关键组成部分。MySQL允许管理员创建、管理用户,并根据需要授予不同的权限,确保数据的安全性和访问控制。以下是关于MySQL用户及授权的一些详细知识点: 1. **创建用户**...

    MySQL新建用户,授权,删除用户,修改密码

    本文将深入探讨如何在MySQL中新建用户、授权、删除用户以及修改密码的过程与细节,旨在为数据库管理员提供实用的操作指南。 ### MySQL新建用户 新建用户是数据库管理中最基础的操作之一。在MySQL中,这一过程可以...

    mysql5.7创建用户授权删除用户撤销授权

    本文将详细介绍如何创建用户、授权、删除用户以及撤销权限,帮助你更好地理解和实践这些操作。 1. **创建用户** 创建MySQL用户的主要目的是为了限制不同用户对数据库的访问权限。创建用户的基本命令格式如下: ``...

    MySQL中用户授权以及删除授权的方法

    本文将详细介绍如何在MySQL中为用户授权以及如何撤销或删除这些授权。 首先,用户授权是赋予特定用户对数据库系统的不同操作权限的过程。这包括允许用户进行读取(SELECT)、写入(INSERT、UPDATE)、删除(DELETE...

    MySQL 添加用户、删除用户、授权、回收权限

    MySQL 用户管理与权限控制 ...通过本文,我们了解了 MySQL 中的用户管理和权限控制的基本概念和操作步骤,包括创建用户、授权、删除用户、修改密码、撤销权限等。正确地使用这些操作可以确保数据库的安全和稳定性。

    MySQL多表查询、事务和管理用户及授权

    本文将深入探讨MySQL中的多表查询、事务处理以及用户管理和权限授权。 **一、多表查询** 在数据库设计中,往往需要处理多个相关表的数据。MySQL提供了多种多表查询方法,包括: 1. **JOIN操作**:JOIN允许你将两...

    mysql授权问题解决办法

    本文将详细介绍如何解决MySQL中的授权问题,包括但不限于如何更改root用户的密码、如何确保数据库服务正常运行以及如何通过命令行执行特定的初始化脚本。 #### 一、系统管理员权限获取 在解决MySQL授权问题之前,...

    mysql数据操作和mysql授权操作

    MySQL 数据操作是数据库管理系统中的核心功能,用于创建、读取、更新和删除(CRUD)数据。在MySQL中,这些操作通常通过SQL语句来执行,SQL是结构化查询语言,是与数据库交互的标准。 首先,插入数据是通过`INSERT ...

    Mysql纯命令行添加用户

    本文将详细介绍如何在MySQL命令行环境下添加用户、管理权限以及删除用户。 1. **创建用户** 使用`CREATE USER`语句来创建新的用户。基本格式如下: ``` CREATE USER 'username'@'host' IDENTIFIED BY 'password'...

    MySQL创建用户与授权及撤销用户权限方法

    本文将详细介绍如何在MySQL中创建用户、授权、更改密码、撤销权限以及删除用户。 首先,我们来看如何创建用户。在MySQL中,使用`CREATE USER`语句来创建新的用户账户。例如,创建一个名为'dog'的本地用户,密码为'...

    mysql用户root提权

    从给定的文件标题、描述、标签以及部分内容来看,本话题聚焦于MySQL数据库环境下如何对root用户进行权限提升,以及通过一系列操作实现非授权访问或系统级控制的过程。以下是对这一知识点的深入解析。 ### MySQL用户...

    mysql授权用户 开发用户帮助文档

    ### MySQL授权用户知识点详解 #### 一、MySQL用户权限管理概览 在MySQL数据库管理系统中,用户权限管理是一项非常重要的功能。它可以帮助管理员控制不同用户的访问级别和操作范围,从而确保数据的安全性和完整性。...

    mysql 用户管理

    MySQL用户管理是数据库系统中至关重要的环节,它涉及到数据安全、权限控制以及日常运维等多个方面。在MySQL中,用户账户的创建、登录、授权、修改和删除等操作都需要遵循一定的规则和流程。 首先,创建新的MySQL...

    MySQL 创建用户、授权用户、撤销用户权限、更改用户密码、删除用户(实用技巧)

    MySQL创建用户并授权及撤销用户权限 运行环境:MySQL5.0 一、创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username – 你将创建的用户名, host – 指定该用户在哪个主机上可以...

    MySQL创建用户与授权方法

    MySQL是世界上最流行的开源关系型数据库管理系统之一,它提供了丰富的用户管理功能,包括创建用户、授权、更改密码、撤销权限以及删除用户。以下是对这些概念的详细说明: **一、创建用户** 创建用户是通过`CREATE...

    linux下非root权限的mysql安装

    进入 MySQL 数据库后,需要创建用户和授权。可以使用 SQL 语句来创建用户和授权。例如: ``` create user xute identified by '123456'; grant all privileges on *.* to xute@'localhost' identified by '123456'; ...

Global site tag (gtag.js) - Google Analytics