更新记录
转载请注明出处。
2022年9月5日 发布。
2022年9月5日 从笔记迁移到博客。
用户管理
登录
/>mysql -h 主机 -u 用户名 -p 密码 -P 端口 -e SQL语句;
>mysql 选项 值
选项可取(主要参数,非全部):
-h 主机地址
-P 端口
-u 用户名
-p 密码
-e 指定执行sql语句,注意要加双引号
DatabaseName 指定登录数据库没有选项,只有值,可以放在最后
退出
/>mysql exit
或者
/>mysql quit
或者
/>mysql /q
创建用户
create user
CREATE USER 用户名[@主机] IDENTIFIED BY '密码'; //保存密码
注意:
密码需要使用引号包裹
使用CREATE USER 创建的用户没有任何权限.需要赋予权限
实例:
CREATE USER dog@localhost IDENTIFIED BY '1234567';
创建用户并赋权
只赋予权限
GRANT [ALL] 权限,权限,... ON 数据库.数据表 TO 用户名@主机
赋权并创建用户
GRANT [ALL] 权限,权限,... ON 数据库.数据表 TO 用户名@主机 IDENTIFIFD BY '密码' WITH GRANT OPTION;
实例:
GRANT SELECT,UPDATE,INSERT ON *.* TO user@localhost IDENTIFIFD BY '123456' WITH GRANT OPTION;;
直接操作user表
INSERT INTO mysql.user (Host,User, authentication_string) VALUES('主机名或IP','用户',PASSWORD("密码"));
删除用户
DROP USER
DROP USER '用户名'@'主机';
删除所有用户,注意!慎用
DROP USER;
操作user表
DELETE FROM mysql.user WHERE Host='主机名' AND User='用户名';
重命名用户名
RENAME
RENAME USER '旧用户名'@'主机名' TO '新用户名'@'主机名';
操作user表
UPDATE mysql.user SET user = '新用户名' WHERE user = '旧用户名';
刷新user表
FLUSH PRIVILEGES;
修改密码
登陆后修改密码-SET PASSWORD
SET PASSWORD = PASSWORD('新密码');
登陆后修改密码-修改root用户密码2-操作user表
UPDATE mysql.user SET authentication_string=PASSWORD('密码')
WHERE User='root' AND Host='localhost';
修改root用户密码3- mysqladmin
mysqladmin -u 用户名 -h 主机 -p password "新密码"
备注:
新密码一定要用””包裹,命令行下不用””
结尾没有;
password是关键字
管理员修改普通用户密码1
SET PASSWORD FOR '用户名'[@'主机'] = PASSWORD('新密码');
管理员修改普通用户密码2
GRANT USAGE ON *.* TO '用户名'@'主机' IDENTIFIED BY '新密码';
ROOT密码丢失
Windows下
打开服务,键入WIN+R打开运行,输入 services.msc
在系统服务窗口找到MySQL的服务名,默认一般为MySQLd
关闭MySQL服务(也可以在服务窗口查找关闭或者直接)
net stop mysqld #一般服务名为mysqld
net stop wampmysqld64 #如果是wampservr下的MySQL
重新启动MySQL服务器,但禁用权限表
net start mysqld --skip-grant-tables
net start wampmysqld64 --skip-grant-tables #如果是wampservr下的MySQL
登录root
mysql -u root
重新设置密码
UPDATE mysql.user SET authentication_string=PASSWORD('新密码')
WHERE HOST = 'localhost' AND USER='root';
重启服务
net restart mysqld
net restart wampmysqld64 #如果是wampservr下的MySQL
Linux下
关闭MySQL服务
service mysqld stop
禁用权限表,启动MySQL服务器
service mysqld start --skip-grant-tables&
登录root
mysql -u root
重新设置密码
UPDATE mysql.user SET authentication_string = PASSWORD('新密码')
WHERE HOST = 'localhost' AND USER='root';
重启服务
service mysqld restart
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/287384.html