欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > 数据库 >内容正文

数据库

mysql %用户域_MySQL运维---用户权限及管理

发布时间:2025/4/17 数据库 56 豆豆
生活随笔 收集整理的这篇文章主要介绍了 mysql %用户域_MySQL运维---用户权限及管理 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

一、mysql创建用户

1、创建用户

mysql> create user test@'%' identified by '123456'; 创建了用户,但是没有任何权限

Query OK,0 rows affected (0.00sec)

mysql> grant all on *.* to root@'localhost' identified by '123456'; 没有用户,则创建用户,用户存在,就赋予权限

Query OK,0 rows affected (0.00 sec)

2、删除用户

mysql>drop user test;

Query OK,0 rows affected (0.00 sec)

3、用户的定义

1) username@’主机域’

2)主机域:可以理解为是MySQL登陆的白名单

3)主机域格式:

’10.0.0.51’

’10.0.0.5%’

’10.0.0.%’

’10.0.%.%’

’10.%.%.%’

‘%’

‘db01’

’10.0.0.51/255.255.255.0’

4、修改用户密码

[root@controller ~]# mysqladmin -uroot -p123456 password '123'; mysqladmin修改密码

mysql> grant all on *.* to root@'localhost' identified by '123456'; grant修改密码

mysql> update mysql.user set password=PASSWORD('123') where user='root' and host='localhost'; update修改密码

mysql> set password= PASSWORD('123456'); set修改当前登录用户密码

二、企业中权限开通方法

1、all和all privileges结果一样

2、用户权限介绍

MySQL的权限定义:

作用对象:库、表

权限

INSERT,SELECT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER,

SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT,

CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE

归属

grant all privileges on *.* to oldboy@’10.0.0.%’ identified by ‘123’;

权限 作用对象 归属 密码

作用对象分解

*.* [当前MySQL实例中所有库下的所有表]

wordpress.* [当前MySQL实例中wordpress库中所有表(单库级别)]

wordpress.user [当前MySQL实例中wordpress库中的user表(单表级别)]

3、企业中权限的设定

#一般给开发创建用户权限

grantselect,update,delete,insert on *.* to oldboy@’10.0.0.%’ identified by ‘123’;

4、结论

1、如果在不同级别都包含某个表的管理能力时,权限是相加关系。

2、但是我们不推荐在多级别定义重复权限。

3、最常用的权限设定方式是单库级别授权,即:wordpress.*

三、MySQL连接管理

1、连接工具

1)MySQL自带的连接工具:mysql

常见的特定于客户机的连接选项:

-u:指定用户-p:指定密码-h:指定主机-P:指定端口-S:指定sock-e:指定SQL--protocol=name:指定连接方式

2)第三方的连接工具:sqlyog、navicat

应用程序连接MySQL:需要加载对应语言程序的API

2、连接方式

1)scoket连接:

mysql -uroot -poldboy123 -S/application/mysql/tmp/mysql.sock

mysql-uroot -poldboy123

2)TCP/IP连接

mysql -uroot -poldboy123 -h10.0.0.51 -P3306

3、当数据库服务器没有公网IP时,可用第三方工具跳转连接

1)填写mysql所在主机内网IP

2)填写可连接至数据库服务器的跳板机公网IP

四、MySQL启动关闭流程

1、关闭流程图

启动mysql:

/etc/init.d/mysqld start ------> mysqld_safe ------> mysqld

关闭mysql:

/etc/init.d/mysqld stop

mysqladmin-uroot -poldboy123 shutdown

kill-9 pid ?killall mysqld?pkill mysqld?

kill杀死mysql容易出现的问题:

1)如果在业务繁忙的情况下,数据库不会释放pid和sock文件

2)号称可以达到和Oracle一样的安全性,但是并不能100%达到

3)在业务繁忙的情况下,丢数据(补救措施,高可用)

五、MySQL实例初始化配置

1、初始化实例拓扑图

1)预编译:cmake去指定,硬编码到程序当中去

2)在命令行设定启动初始化配置

--skip-grant-tables--skip-networking--datadir=/application/mysql/data--basedir=/application/mysql--defaults-file=/etc/my,cnf--pid-file=/application/mysql/data/db01.pid--socket=/application/mysql/data/mysql.sock--user=mysql--port=3306

--log-error=/application/mysql/data/db01.err

3)初始化配置文件(/etc/my.cnf)

配置文件读取顺序:

/etc/my.cnf/etc/mysql/my.cnf

$MYSQL_HOME/my.cnf(前提是在环境变量中定义了MYSQL_HOME变量)

defaults-extra-file (类似include)~/my.cnf

注意:--defaults-file:默认配置文件,如果使用./bin/mysqld_safe 守护进程启动mysql数据库时,使用了 --defaults-file=参数,这时只会使用这个参数指定的配置文件。

优先级结论:

1)、命令行2)、defaults-file3)、配置文件(最后一个生效)4)、预编译

2、初始化配置文件的使用

初始化配置文件功能:

1)影响实例的启动(mysqld)

2)影响到客户端(mysql、mysqldump、mysqladmin)

如何配置初始化配置文件:

1)配置标签分类

[client]所有客户端程序

mysql

mysqldump

[server]所有服务器程序

mysqld

mysqld_safe

总结

以上是生活随笔为你收集整理的mysql %用户域_MySQL运维---用户权限及管理的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。