一、安装完毕之后按照如下步骤执行
update user set host='%' where host='127.0.0.1';
先关闭mysql并设置密码
#/etc/init.d/mysql stop #mysqld_safe --user=mysql --skip-grant-tables --skip-networking & #mysql -u root mysql mysql>UPDATE user SET Password=PASSWORD('123456') where USER='root'; mysql> FLUSH PRIVILEGES; mysql> quit
重启mysql并尝试登录
# /etc/init.d/mysql restart # mysql -uroot -p Enter password: #输入密码,出现下面这个就表示登录正常了 mysql>
登录之后需要再次重置密码
mysql> SET PASSWORD = PASSWORD('123456');
新建库:
CREATE DATABASE test;
新建用户
create user 'koacif'@'%' identified by 'koacif'; -- 百分号可以设置成IP地址,仅限制此IP,支持通配符。
登录MYSQL
创建用户及授权(.)前面的*
代表所有数据库,后面的*
代表所有权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
刷新系统权限表
mysql>flush privileges;
5. 删除用户 和权限
mysql -u root -p
mysql>DELETE FROM user WHERE User='koacif' and Host='%';
mysql>flush privileges;
删除用户的数据库
mysql>drop database test;
修改指定用户密码
mysql -u root -p
mysql>update mysql.user set password=password('新密码') where User='kdta_ta' and Host='%';
mysql>flush privileges;
mysql>quit;
二、权限设置
为用户授权
登录MYSQL(有ROOT权限)。这里我以ROOT身份登录。
首先为用户创建一个数据库(jeecnDB)mysql> create database jeecnDB;
授权jeecn用户拥有jeecn数据库的所有权限grant all privileges on jeecnDB.* to jeecn@localhost identified by ‘jeecn’;
刷新系统权限表
2. 如果想指定部分权限给一用户,可以这样来写:
mysql>grant select,update on jeecnDB.* to jeecn@localhost identified by ‘jeecn’;
然后刷新系统权限表。
mysql> grant 权限1,权限2,…权限n on 数据库名称。表名称 to 用户名@用户地址 identified by ‘连接口令’;
权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
当数据库名称。表名称被.代替,表示赋予用户操作服务器上所有数据库所有表的权限。
‘连接口令’不能为空,否则创建失败。
例如:
给来自10.163.225.87的用户jee分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
mysql>grant all privileges on vtdc.* to jee@10.10.10.87 identified by ‘123′;
给来自10.163.225.87的用户jee分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on . to jee@10.10.10.87 identified by ‘123′;
mysql>grant all privileges on . to jee@localhost identified by ‘123′;
给本机用户jee分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。