mysql命令行下用户管理方法分享

mysql安装后好,会有一个名字为mysql的数据库,存放用户的表是user,mysql数据库的用户管理就是围绕这个表展开的,当然还有一些表,例如:tables_priv,procs_priv,clumns_priv,information_sch

                        mysql安装后好,会有一个名字为mysql的数据库,存放用户的表是user,mysql数据库的用户管理就是围绕这个表展开的,当然还有一些表,例如:tables_priv,procs_priv,clumns_priv,information_schema数据库里面的USER_PRIVILEGES等。 如果有mysql管理工具phpmyadmin的话,我们可以通过图形画界面来对用户进行管理,但是如果没有phpmyadmin这样的管理工具怎么办呢?这个时候,我们可以通过命令行执行sql语句来管理mysql的用户。 一,添加用户 1,create user 语法: CREATE USER user_specification [, user_specification] ... user_specification: user [IDENTIFIED BY [PASSWORD] 'password'] 实例: 复制代码 代码如下: mysql> create user '44'@'127.0.0.1'; //创建一个44用户 Query OK, 0 rows affected (0.00 sec) mysql> create user '33'@'localhost' identified by 'aaaa'; //创建一个33用户,密码为aaaa Query OK, 0 rows affected (0.00 sec) mysql> select * from mysql.user where user='33' or user='44'\G; //查看一下mysql下的user create user 虽然可以创建用户,但是它只是创建用户,并没有给用户分配置权限,所以一般被 grant命令所取代。 2,grant 语法: GRANT priv_type [(column_list)] [, priv_type [(column_list)]] ... ON [object_type] priv_level TO user_specification [, user_specification] ... [REQUIRE {NONE | ssl_option [[AND] ssl_option] ...}] [WITH with_option ...] object_type: TABLE | FUNCTION | PROCEDURE priv_level: * | *.* | db_name.* | db_name.tbl_name | tbl_name | db_name.routine_name user_specification: user [IDENTIFIED BY [PASSWORD] 'password'] ssl_option: SSL | X509 #要求x509证书 | CIPHER 'cipher' #加密算法 | ISSUER 'issuer' #证书发行商 | SUBJECT 'subject' #主题 with_option: GRANT OPTION | MAX_QUERIES_PER_HOUR count #每小时最多执行多少条sql | MAX_UPDATES_PER_HOUR count #每小时最多更新多少条数据 | MAX_CONNECTIONS_PER_HOUR count #每小时最大的联接数是多少 | MAX_USER_CONNECTIONS count #最大用户联接数 不要被上面的语法吓倒,其实理解什么意思,就很容易掌握。我是这样理解的。 grant 权限 on 应用范围(数据库表,方法等) to 用户(用@隔开,前面是用户名后面是主机名'用户名'@'主机名') identified by 密码 require 要求什么的 with 对用户的进行的执行sql的条数控制。 个人觉得,只要记得上面几个红色的关键词,基本上这个命令就掌握了。 
Privilege Meaning ALL [PRIVILEGES] 所有权限 ALTER 可以使用alter table ALTER ROUTINE 可以使用alter routine CREATE 可以创建数据库和表 CREATE ROUTINE 可以使用create routine CREATE TEMPORARY TABLES 可以使用临时表 CREATE USER 可以对用户进添加,删除,重命名,撤销权限 CREATE VIEW 可以创建和修改视图 DELETE 可以删除数据 DROP 可能删除数据库,表,视图等 EVENT 可以使用事件高度器 EXECUTE 可以执行routine FILE 可以在服务器读写文件 GRANT OPTION 用户有权对自己添加的用衣授权 INDEX 可以创建,删除索引 INSERT 可以插入 LOCK TABLES 可以锁定表 PROCESS 可以使用SHOW PROCESSLIST来查看mysql当前用户的执行sql情况 REFERENCES Not implemented RELOAD 可以使用刷新功能 REPLICATION CLIENT 用户可以进行主从同步 REPLICATION SLAVE 主从同步时,从服务器可以从主服务器读取binary log SELECT 可以查找 SHOW DATABASES 可以使用show databases来查看所有数据库 SHOW VIEW 可以使用show view来查看视图 SHUTDOWN 可以使用mysqladmin中的参数shutdown SUPER Enable use of other adminstrative operations such as CHANGE MASTER TO, KILL, PURGE BINARY LOGS, SET GLOBAL, and mysqladmin debug command TRIGGER 可以使用触发器 UPDATE 可以进行理会新操作 USAGE 无特权