首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更改MySQL实例根用户密码?

如何更改MySQL实例根用户密码?
EN

Stack Overflow用户
提问于 2017-11-25 22:13:27
回答 2查看 726关注 0票数 0

我以前在Ubuntu上有一个MySQL服务器实例,但出于安全考虑,我决定使用两个实例,因为测试和prod应用程序都将对web用户开放。因此,我配置了两个MySQL服务器实例,并运行mysqld_multi start来设置数据库。My /etc/mysql/my.cnf:

代码语言:javascript
复制
[mysqld0]
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
user=mysql
pid-file=/var/run/mysqld/mysqld0.pid
socket=/var/run/mysqld/mysqld0.sock
port=3306
datadir=/home/prod/data
log_error=/var/log/mysql/error0.log

[mysqld1]
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
user=mysql
pid-file=/var/run/mysqld/mysqld1.pid
socket=/var/run/mysqld/mysqld1.sock
port=3307
datadir=/home/test/data
log_error=/var/log/mysql/error1.log

使用mysqld_multi start 0,1,我启动了两个实例,但无法通过根用户获取本地主机上的根访问权限来访问它们。

我尝试遵循这些说明(提供额外的-套接字参数) https://support.rackspace.com/how-to/mysql-resetting-a-lost-mysql-root-password/,因为它们以前帮助过我,但没有用。

在以安全模式连接到MySQL时,我还会看到在原始实例中设置的以前的用户。

也许我理解多个MySQL服务器实例,以及它们应该如何以错误的方式工作?是否所有实例共享相同的用户?如何访问新创建的实例?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-26 11:16:54

必须使用附加参数运行mysqld_safe --为每个实例mysqld_safe --mysqld=/usr/sbin/mysqld --basedir=/home/test/data/mysql --datadir=/home/test/data --skip-grant-tables提供dir。在那之后一切都如期而至

票数 1
EN

Stack Overflow用户

发布于 2017-11-25 22:18:10

下面是如何在SQL中执行此操作

对于MySQL 5.7.6或更高版本,您可以这样做

代码语言:javascript
复制
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';

或者对于MySQL 5.7.5或更早版本,您可以这样做

代码语言:javascript
复制
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47491010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档