博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL账户相关(转)
阅读量:2496 次
发布时间:2019-05-11

本文共 2206 字,大约阅读时间需要 7 分钟。

1.my用户创建:

shell> my --user=root my

my> GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'something' WITH GRANT OPTION;

my> GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'something' WITH GRANT OPTION;

my> GRANT RELOAD,PROCESS ON *.* TO admin@localhost;

my> GRANT USAGE ON *.* TO dummy@localhost;

这些GRANT语句安装3个新用户:

monty

可以从任何地方连接服务器的一个完全的超级用户,但是必须使用一个口令'something'做这个。注意,我们必须对monty@localhost和monty@"%"发出GRANT语句。如果我们增加localhost条目,对localhost的匿名用户条目在我们从本地主机连接接时由my_install_db创建的条目将优先考虑,因为它有更特定的Host字段值,所以以user表排列顺序看更早到来。

admin

可以从localhost没有一个口令进行连接并且被授予reload和process管理权限的用户。这允许用户执行myadmin reload、myadmin refresh和myadmin flush-*命令,还有myadmin processlist。没有授予数据库有关的权限。他们能在以后通过发出另一个GRANT语句授权。

dummy

可以不用一个口令连接的一个用户,但是只能从本地主机。全局权限被设置为'N'--USAGE权限类型允许你无需权限就可设置一个用户。它假定你将在以后授予数据库相关的权限。

2.通过直接修改授权表设置用户权限,运行这些命令(注意,在结束时FLUSH PRIVILEGES):

shell> my --user=root my

my> INSERT INTO user (Host,User,Password) VALUES('localhost','custom',PASSWORD('stupid'));

my> INSERT INTO user (Host,User,Password) VALUES('server.domain','custom',PASSWORD('stupid'));

my> INSERT INTO user (Host,User,Password) VALUES('whitehouse.gov','custom',PASSWORD('stupid'));

my> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv)

VALUES ('localhost','bankaccount','custom','Y','Y','Y','Y','Y','Y');

my> INSERT INTO db

(Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv)

VALUES ('whitehouse.gov','expenses','custom','Y','Y','Y','Y','Y','Y');

my> INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv, Create_priv,Drop_priv)

VALUES('%','customer','custom','Y','Y','Y','Y','Y','Y');

my> FLUSH PRIVILEGES;

3.改动密码时有时候会遇到忘记先前的密码,这时可以采用以下方式:

修改你的my.ini 配置文件,

在里面的 [myd]节中某处加入下面的一行

skip-grant-tables

然后保存,重启 myd 服务,这样你可以使用任何用户名以超级管理员的身体登录 MySQL 服务了。

然后转到my数据库中修改user表:

update user set password=PASSword('1234') where user='root';

一定记住要用password函数,否则将来将要输入的密码是‘1234’的密文。

最后删除上面所添中的内容,重启服务。

另外,如果可以从本机或其它机器上找到可以正常使用的MySql数据库,那么也可拷贝其my库中的文件名为user的相关文件,覆盖忘记密码的数据库中的同名文件,这样也能以被拷贝者的账户密码登录。

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

转载于:http://blog.itpub.net/10294527/viewspace-122715/

你可能感兴趣的文章
linux进程之间通讯常用信号
查看>>
main函数带参数
查看>>
PCB布线技巧
查看>>
关于PCB设计中过孔能否打在焊盘上的两种观点
查看>>
PCB反推理念
查看>>
京东技术架构(一)构建亿级前端读服务
查看>>
php 解决json_encode中文UNICODE转码问题
查看>>
LNMP 安装 thinkcmf提示404not found
查看>>
PHP empty、isset、innull的区别
查看>>
apache+nginx 实现动静分离
查看>>
通过Navicat远程连接MySQL配置
查看>>
phpstorm开发工具的设置用法
查看>>
Linux 系统挂载数据盘
查看>>
Git基础(三)--常见错误及解决方案
查看>>
Git(四) - 分支管理
查看>>
PHP Curl发送数据
查看>>
HTTP协议
查看>>
HTTPS
查看>>
git add . git add -u git add -A区别
查看>>
apache下虚拟域名配置
查看>>