mysql更改用户权限
This entry was posted by admin Monday, 26 April, 2010
1.“grant all on *.* to root@’%’ identified by ‘yourpassword’;”——这个还可以顺带设置密码。
2.“flush privileges; ”——刷新一下,让权限生效。
mysql的一些其他的管理,可以用mysqladmin命令。可以用来设置密码什么的。
grant方面的详细信息可以看我下面的转载:
本文实例,运行于 MySQL 5.0 及以上版本。
MySQL 赋予用户权限命令的简单格式可概括为:
grant 权限 on 数据库对象 to 用户
一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。
grant select on testdb.* to common_user@’%’
grant insert on testdb.* to common_user@’%’
grant update on testdb.* to common_user@’%’
grant delete on testdb.* to common_user@’%’
或者,用一条 MySQL 命令来替代:
grant select, insert, update, delete on testdb.* to common_user@’%’
B. 如何给远程主机开启mysql远程登录权限
基于安全考虑root账户一般只能本地访问,但是在开发过程中可能需要打开root的远程访问权限。下面是基本的步骤:
1、登录到MySQL中,为root进行远程访问的授权,执行下面的命令:
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
mysql> flush privileges;
第一句中"%"表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,如:
GRANT ALL PRIVILEGES ON *.* TO root@"172.168.193.25" IDENTIFIED BY "root";
第二句表示从mysql数据库的grant表中重新加载权限数据。因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。
2、修改/etc/mysql/my.cnf,需要root用户权限。找到文件中的:
[ruby] view plain print?
bind-address = 127.0.0.1
将其注释掉,保存。
3、重新启动MySQL服务器。执行下面的几条命令即可:
# /usr/bin/mysqladmin -u root -p shutdown
# /usr/bin/mysqld_safe &
如果mysqladmin和mysql_safe不在/usr/bin目录中,可以通过whereis命令查找,例如:
# whereis mysqladmin
mysqladmin: /usr/bin/mysqladmin /usr/share/man/man1/mysqladmin.1.gz
执行完上面的三步后,就可以通过远程机器连接了数据库了。
C. 在mysql中mysql -uroot -p 命令是做什么的,-u 和 -p有什么用。
mysql -uroot -pxxx,解释:-u后面跟用户名,-p后面写密码。
1、该命令行是做mysql数据库的登录操作。
2、其他常见命令;
1)、查看所有数据库,show databases;
2)、创建数据库,create database test2;
3)、删除数据库,drop database test2;
4)、选择应用某个数据库,例如:blogdemo2数据库,use blogdemo2;
5)、查看某个数据库下的所有表,show tables;
扩展资散埋料
1、冲春蚂创建用户
1)、登录mysql后创建新用户,@后面的表示可以在哪里登录,%可以在任意地方登录,用不同的用户登森此录数据库,表不一样
如:create user 'abc'@'locallost' identified by 'usrabc';
2)、也可以用下面这种方法创建用户
mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
这样就创建了一个名为:test 密码为:1234 的用户。
2、为用户授权
授权格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
参考资料
网络-Mysql