文章备份
用户管理
https://www.cnblogs.com/clsn/p/8047028.html
https://blog.csdn.net/typa01_kk/article/details/49126365
https://blog.csdn.net/anzhen0429/article/details/78296814
https://www.cnblogs.com/jiuyi/p/6211275.html
https://blog.csdn.net/u014313075/article/details/78180655
- 用户
查看所有的用户
select host,user,host from mysql.user;
创建用户
CREATE USER ‘用户’@‘主机’ IDENTIFIED BY ‘密码’;
修改用户
update 数据库表mysql
删除用户
drop user ‘user’@‘主机域’ 或者delete
权限控制
GRANT语法:
GRANT 权限 ON 数据库.* TO 用户名@'登录主机' IDENTIFIED BY '密码'
权限:
ALL:所有权限
表结构:
ALTER:修改表结构或者索引
CREATE:创建数据库或者表
DROP:删除数据库或者表
INDEX:创建或者删除索引
数据:
Insert:向表中插入行
SELECT:查询表中数据
UPDATE:修改表中数据
DELETE :删除表中数据
新增用户:权限为USAGE,即为:"无权限",想要创建一个没有权限的用户时,可以指定USAGE
数据库:
*.* 表示所有库的所有表
mylove.* 表示mylove库的所有表
mylove.loves 表示mylove库的loves表
用户名:
MySQL的账户名
登陆主机:
允许登陆到MySQL Server的客户端ip
'%'表示所有ip
'localhost' 表示本机
'10.155.123.55' 特定IP
密码:
MySQL的账户名对应的登陆密码
with grant option:
表示允许用户将自己的权限授权给其它用户,可加可不加
示例:
grant all privileges on *.* to 'yangxin'@'%' identified by 'yangxin123456' with grant option
GRANT SELECT ON *.* TO 'user10'@'%' IDENTIFIED BY '123'
revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:
回收所有权限
REVOKE ALL PRIVILEGES,GRANT OPTION from 'developer'@'%';
https://blog.csdn.net/nangeali/article/details/76474148
create user ‘web’@‘172.16.1.%’ identified by ‘web123’;
查看权限
show grants for ‘developer’@’%’;
刷新权限
FLUSH PRIVILEGES
启动Mysql
https://www.cnblogs.com/yingdiblog/p/7011054.html
关键属性:
–defaults-file 每种启动方式都可以强制指定
单实例
- mysqld函数 ./mysqld --defaults-file=/etc/my.cnf --user=root
- mysqld_safe函数:./mysqld_safe --defaults-file=/etc/my.cnf --user=root &
- mysql.server函数:cp -v /usr/local/mysql/support-files/mysql.server /etc/init.d/
多实例
mysqld_multi 函数:./mysqld_multi --defaults-file=/etc/my.cnf start 3306-3307
终端登录Mysql
端口号:大写P 密码:小写p紧随其后
- 初次安装的mysql服务,用户名:root,密码为空,因此可以直接登录
./mysql -S /tmp/mysql3306.sock -h 192.168.5.116 -P 3306 -u root -p123456
修改Mysql密码
https://blog.csdn.net/gua___gua/article/details/52142106
- 用SET PASSWORD命令
SET PASSWORD FOR ‘root’@‘localhost’ = PASSWORD(‘newpass’);
- 用mysqladmin
mysqladmin -u root password “newpass”
如果root已经设置过密码,采用如下方法
mysqladmin -u root -poldpass password “newpass”
- 用UPDATE直接编辑user表
UPDATE user SET Password = PASSWORD(‘newpass’) WHERE user = ‘root’;
FLUSH PRIVILEGES;
- 在丢失root密码的时候,可以这样
mysqld_safe --skip-grant-tables -socket=/tmp/mysql3306.sock &
UPDATE user SET password=PASSWORD(“new password”) WHERE user=‘root’;
FLUSH PRIVILEGES;
查看Mysql当前连接数:
show status like “Thread%” 或者 show processlist
show variables like ‘%max_connections%’;
set GLOBAL max_connections=1000