ITPub博客

mysql学习5:第二章:mysql安装启动和关闭——密码重置及权限管理

翻译 MySQL 作者:studywell 时间:2018-11-05 12:55:52 0 删除 编辑


 

1.1.   mysql数据库root密码丢失问题

 

通过添加--skip-grant-tables参数跳过权限表

#mysql -uroot -p

强制停库,先查看mysql进程号

[root@localhost mysql]# ps -ef |grep mysql

root      16762      1  0 10:18 pts/3    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/mysql.pid

mysql     18122  16762  0 10:18 pts/3    00:00:01 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/error.log --open-files-limit=65535 --pid-file=/data/mysql/mysql.pid --socket=/tmp/mysql.sock --port=3306

 

kill掉mysql进程,命令如下:

[root@localhost mysql]# kill -9 18122 16762

跳过权限检查表,重启数据库;

#./mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables &

为了安全可以这样禁止远程连接:

# mysqld_safe --skip-grant-tables --skip-networking &

重新登陆入数据库

给root用户设置新密码并授权,5.7之后,密码password用authentication_string字段代替;

# mysql

mysql>use mysql

#查看用户

mysql> select user,host from user;

mysql> update mysql.user set authentication_string=password('root') where user='root' and Host = 'localhost';

mysql>flush privileges;

修改完毕。重启

[root@localhost ~]# service mysql restart

正常启动数据库

#./mysqld_safe --defaults_file=/etc/my.cnf &

#mysql -uroot -p

然后mysql就可以连接,可正常修改用户密码

mysql> alter user 'root' identified by 'root123';

mysql> set password for 'root'@'localhost'=password('123');

 

1.2.   mysql数据库的连接方式

linux平台两种连接方式:1.tcp/ip连接方式;2.Socket连接

windows平台:1.name pipe;2.share memory(不考虑);

 

TCP/IP连接使用最广:

mysql -u username -p password -P port -h IP

客户端发起到实例的链接》实例检查权限表mysql.user》允许则建立链接。

 

Unix Socket连接方式不是网络协议,只能用于客户端和数据库实例在一台服务器上使用。配置文件中指定套接字文件路径:socket=/tmp/mysql.sock

连接命令:

mysql -u username -p password -S */tmp/mysql.sock

 

连接mysql的工具: sqlyog,navicat;

1.3.   用户权限管理

MySQL数据库中用户分为超管权限用户root和普通用户(root用户创建)。

超管权限和all privileges权限用户只能归DBA管理。

 

创建用户,尽量专库专账号,不要一个账号管理多个库。

创建用户语法:

create user username@host identified by ‘password’;

注意:主机IP避免用%,可分配一个IP段;

 

权限分类:

l   只读权限:只能查询,不能DML

l   读写权限:insert,update,delete,select

 

示例:

create user ‘erp_read’@’192.168.56.%’ identified by ‘erp123’;

grant select on erp.* to ‘erp_read’@’192.168.56.%’ identified by ‘erp123’;

flush privileges;

create user ‘erp_user’@’192.168.56.%’ identified by ‘erp456’;

grant select,insert,update,delete on erp.* to ‘erp_user’@’192.168.56.%’ identified by ‘erp456’

flush privileges;


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29519108/viewspace-2218718/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-03-04

  • 博文量
    278
  • 访问量
    395432