mysql中的实例用户、mysql用户变量
文章目录:
- 1.mysql实例是什么意思?
- 2、如何查询mysql的实例名
- 3、修改MySQL中的各种用户信息
- 4.什么是mysql多实例以及如何配置mysql多实例
- 5、mysql中如何在用户下创建表?该表可以在数据库实例中创建,但是我在我创建的用户下看不到它。我以前用的是Oracle。
- 6.创建Mysql实例
mysql实例是什么意思?
MySQL实例实际上是mysql.exe进程!启动MySQL服务后,生成mysql.exe进程!

如何查询mysql实例名称
方法有很多种。通常,您使用系统用户登录。各种信息
MySQL中更改用户的语法如下:
看了这么一大堆资料,感觉没说什么,一头雾水。下面解释一下各个选项的具体含义。
每个人都应该对此有所了解。
首先,它用方括号括起来,表示它是可选的但不是必需的。换句话说,IF EXISTS 不一定要出现在我们的 alter user 指令中,但也不是强制的。但为什么这个仍然存在?该选项的目的是启用alter user 命令的执行。如果语句中指定的数据库用户不存在(或者您输入的用户名不正确),那么如果我们指定“IF EXISTS”一词,则不会直接发送错误消息,而是发送警告消息,而不是错误消息。
简单来说:如果alter user指令中指定的用户存在,则执行该指令。如果不存在,则不执行该语句,并省略alter user 语句。看例子:
上面的例子中,第一条修改用户的语句直接修改了一个不存在的用户的信息,没有使用ifexists关键字。结果直接显示错误信息。然后我们使用了if contains关键字,结果是SQL语句执行成功,但是显示了警告。然后,通过show warnings命令,我们可以看到警告信息的内容,这表明用户'zhangsanfeng'@'%'不存在。这就是ifexists关键字存在的意义。
当我们更改用户信息时,必须输入用户的姓名。这个名称不仅是通常登录数据库时输入的用户名,还隐含了用户登录的主机的网段。该网段意味着用户只能通过该网段登录。这是网段。如果用户If不在该指定网段内,即使用户名和密码正确,也无法登录。
以下创建的用户是两个不同的用户。
上述两个用户中,情况如下:该用户登录时,使用的主机IP地址在10.10.0.0~10.10.255.255之间。您可以从任意IP地址登录该网段的QA。
特殊网段localhost。如果我们创建如下用户,则表示该用户只能登录MySQL数据库所在的服务器。
还有一个特殊的网段%。这意味着用户可以通过任何IP地址登录,并且用户登录的主机的网段没有限制。以下用户对其登录主机的IP地址不施加任何限制。
auth_option选项的含义表示指定用户登录数据库所使用的认证插件和密码。您的选择如下。我们分别分析每个选项的使用场景和示例。
如果在 IDENTIFIED 关键字后面没有使用 WITH 关键字来指定要使用的密码插件的名称,则使用 MySQL 默认密码插件。至于MySQL的默认密码插件,可以通过以下命令查看:
从上面的输出中,我们可以看到默认密码插件使用了mysql_native_password插件。 default_authentication_plugin参数的值可以在MySQL配置文件中找到。在 my.cnf 文件中指定时,它可以具有以下两个值:
默认密码身份验证插件在 my.cnf MySQL 配置文件中配置,如下所示:
如果要更改密码身份验证某些用户插件,您可以使用 IDETIFIED WITH auth_plugin 语句。如果用户的密码认证插件使用默认的mysql_native_password,而我们想将密码认证插件更改为sha256_password,我们可以通过以下命令进行更改:
执行完上述命令后,xyz这个用户密码将被设置为空,其密码将更新为过期,其密码认证插件将更新为 sha256_password。结果如下:
更改用户密码识别方式后,xyz再次尝试登录MySQL数据库时,空密码登录成功后,先提示用户更改密码,然后再执行其他SQL语句可以进行操作。这个要求和我们安装MySQL数据库后第一次使用root登录时是一样的。修改root密码是一样的。以下是更改用户 xyz 的密码验证插件并尝试使用空白密码登录后的操作示例:
输入用户的密码验证插件并设置密码。
如果我们想给用户提供一个密码认证插件并设置密码,我们可以使用这个命令。示例如下:
这样就将用户xyz的密码认证方式更改为mysql_native_password,并更改了其密码。是 xyz。重点是关键字by后面是密码的简单文本,即登录时输入的密码值。
输入用户的密码认证插件并设置Password。
如果我们想给用户提供一个密码认证插件并设置密码,我们可以使用这个命令。示例如下:
这样就将用户xyz的密码认证方式更改为mysql_native_password,并更改了其密码。是 xyz。首先,我们需要 as 关键字后跟加密密码,而不是我们的明文密码。如果我们想获取加密的密码,我们可以使用下面的password()函数获取加密的密码。
这主要用于确定用户在连接MySQL数据库时是否应该使用加密。如果使用加密,则必须启用SSL加密协议,并配置MySQL证书。
考虑到性能问题,使用TLS加密连接MySQL数据库会对MySQL数据库的性能产生一定的影响。除非必要,一般不建议对数据库连接启用TLS加密,因为我们的MySQL数据库一般都是内网开放的。因此,无需启用TLS加密协议。
resource_option选项主要设置每个用户可以使用的资源,并限制资源的使用。举例如下:
如果以上四个参数均为0,则表示对应的资源限制不做任何限制。
password_option选项用于配置用户的密码并指定密码的有效期。我们来看几个例子:
MySQL系统默认的有效期可以通过以下命令查看。小于 0 的值表示密码的有效期是恒定的。
选择lock_option 用于锁定和解锁用户。例子有:
什么是mysql多实例以及如何配置mysql多实例
实现mysql多实例有两种方式。两种方法都有其优点和缺点。第一种是使用多个配置文件启动不同的进程来实现多个实例。这种方法的优点是逻辑简单,配置简单。缺点是处理不方便。第二种是通过官方的mysqld_multi文件使用单独的配置文件来实现多个实例。这种方法对于自定义每个实例的配置不是很方便。优点是非常方便,集中管理。
mysql 如何在用户下创建表?该表可以在数据库实例中创建,但是我在我创建的用户下看不到它。我以前用的是Oracle。
MySQL 架构与 Oracle 不同
Oracle 是一个数据库,也是一组服务。不同的用户提供不同的解决方案。
也就是说,如果数据库有两个用户A和B,他们都创建了一张测试表。
然后
可以使用 SELECT * FROM A.test 和 SELECT * FROM B.test 访问这些表。
MySQL 是一组可以创建多个数据库的服务。下面
MySQL,创建数据库
–
CREATE DATABASE databasename;
并使用
USE databasename;
在不同数据库之间切换。
但是,用户和数据库并不直接相互连接。
也就是说,你的MySQL服务可以有2个数据库A和B。下面是测试图。
然后
可以使用 SELECT * FROM A.test 和 SELECT * FROM B.test 访问这些表。
假设您登录后,在实例上创建表时,系统提示无法创建表
可能是您没有选择数据库
或者您没有权限。
如何创建mysql实例
Mysql 与 ORACLE 的不同之处在于不存在多实例这样的东西。
MYSQL服务进程可以同时服务多个DATABASE,不像ORACLE那样,一个实例对应一个DATABASE。
您想启动另一个 MYSQL 进程吗?这也可以通过更改启动命令行中的参数来实现。也可以在启动配置文件 my.cnf 中更改。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网
