http://www.linuxforum.net/books/mysqlmanual/manual_Privilege_system.html#User_names
详细可以查看这个网址。
shell> mysql -u root centos默认安装mysql无密码, mysql> use mysql mysql> UPDATE user SET Password=PASSWORD('new_password') new_password是为root设置的密码,可以自定义 WHERE user='root'; mysql> FLUSH PRIVILEGES;
[root@localhost ~]# mysql -u root -p
Enter password:
输入更改密码new_password 即可登入mysql
mysql> show databases
-> ;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
设置口令的另一种方法是使用mysqladmin
命令:
shell> mysqladmin -u root password new_password6.11 向MySQL增加新用户权限
你可以有2个不同的方法增加用户:通过使用
GRANT
语句或通过直接操作MySQL授权表。比较好的方法是使用GRANT
语句,因为他们是更简明并且好像错误少些。下面的例子显示出如何使用
mysql
客户安装新用户。这些例子假定权限根据以前的章节描述的缺省被安装。这意味着为了改变,你必须在mysqld
正在运行同一台机器上,你必须作为MySQLroot
用户连接,并且root
用户必须对mysql
数据库有insert权限和reload管理权限。另外,如果你改变了root
用户口令,你必须如下的mysql
命令指定它。你可以通过发出
GRANT
语句增加新用户:shell> mysql --user=root mysql mysql> GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH GRANT OPTION; mysql> GRANT RELOAD,PROCESS ON *.* TO admin@localhost; mysql> GRANT USAGE ON *.* TO dummy@localhost;这些
GRANT
语句安装3个新用户:
-
可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令(
'something'
做这个。注意,我们必须对monty@localhost
和monty@"%"
发出GRANT
语句。如果我们增加localhost
条目,对localhost
的匿名用户条目在我们从本地主机连接接时由mysql_install_db
创建的条目将优先考虑,因为它有更特定的Host
字段值,所以以user
表排列顺序看更早到来。 -
可以从
localhost
没有一个口令进行连接并且被授予 reload和 process管理权限的用户。这允许用户执行mysqladmin reload
、mysqladmin refresh
和mysqladmin flush-*
命令,还有mysqladmin processlist
。没有授予数据库有关的权限。他们能在以后通过发出另一个GRANT
语句授权。 -
可以不用一个口令连接的一个用户,但是只能从本地主机。全局权限被设置为
'N'
--USAGE
权限类型允许你无需权限就可设置一个用户。它假定你将在以后授予数据库相关的权限
monty
admin
dummy
GRANT ALL ON *.* TO admin@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION; 添加用户admin具有本地访问权限
flush privileges; # 重载系统权限
mysql> select host, user from user
-> ;
+-----------------------+-------+
| host | user |
+-----------------------+-------+
| % | admin |
| 127.0.0.1 | root |
| localhost | |
| localhost | admin |
| localhost | root |
| localhost.localdomain | |
| localhost.localdomain | root |
+-----------------------+-------+
7 rows in set (0.00 sec)
% 代表所有主机均可访问,但不包括localhost 图中admin有远程和本地访问权限,root只有本地权限。