ubuntu mysql 找出默认密码和添加用户和密码

本文主要讲述在Ubuntu16系统安装MySQL5.7时未提示输入密码,安装后连接报错的解决办法。通过查看debian.cnf文件获取账号登录,修改root用户密码,重启MySQL后即可正常登录。还附上了卸载和安装MySQL的步骤。

Ubuntu16---安装mysql5.7未提示输入密码,安装后修改mysql密码默认密码

Ubuntu16安装mysql5.7未提示输入密码,安装后修改mysql密码默认密码

mysql默认密码为空

但是使用mysql -uroot -p 命令连接mysql时,报错

ERROR 1045 (28000): Access denied for user 'root'@'localhost' 

此时修改root的默认密码即可

 

------------------------------------------------------------------------------------------------------------------------------------------

1.进入到etc/mysql 目录下,查看debian.cnf文件

 

 

2.找到用户名,密码 ,使用此账号登录mysql

用户名:debian-sys-maint

密码:xedvSNKdLavjuEWV

登录:mysql -udebian-sys-maint -pxedvSNKdLavjuEWV

 

 

3.修改root用户的的密码

这里是关键点,由于mysql5.7没有password字段,密码存储在authentication_string字段中,password()方法还能用

在mysql中执行下面语句修改密码

1

2

3

4

5

6

show databases;

use mysql;

update user set authentication_string=PASSWORD("自定义密码") where user='root';

update user set plugin="mysql_native_password";

flush privileges;

quit;

 

 

4.修改完密码,需要重启mysql

/etc/init.d/mysql restart;

 

5.再次登录
mysql -u root -p 密码;

就ok了

------------------------------------------------------------------------------------------------------------------------------------------

 

我卸载了很多遍mysql,重新装还是不提示输入密码,用这个方法解决了问题

附上卸载和安装mysql的步骤吧

卸载:

1

2

3

sudo apt purge mysql-*

sudo rm -rf /etc/mysql/ /var/lib/mysql

sudo apt autoremove

安装:

1

2

3

4

5

6

7

8

# 安装的时候会提示要设置root密码,如果你没有在卸载的时候去清理残留数据是不会提示你去设置root密码的 ,我的就没提示,可以用上面的方法修改密码

sudo apt-get install mysql-client mysql-server

 

#检查mysql是不是在运行

sudo service mysql status

 

#一般安装完成之后都是会自动运行的,如果没有运行可以start

sudo service mysql start

 

转: https://www.cnblogs.com/super-zhangkun/p/9435974.html

<think>好的,我现在需要帮用户解决在Ubuntu系统中查找MySQL默认密码的问题。用户提到他安装了mysql-server但无法用默认密码登录,还提到auth_socket的问题,以及通过修改认证方式为mysql_native_password后可以使用默认密码。我需要结合提供的引用信息来整理回答。 首先,用户的引用里有几个关键点:安装后无法用默认密码登录,root用户使用auth_socket认证,修改认证方式后可以使用默认密码。还有提到使用mysqladmin设置密码的命令,以及一些启动MySQL的选项。错误1045是访问被拒绝的情况。 我需要确定Ubuntu系统中MySQL默认密码是否存在。根据经验,在较新的Ubuntu版本中,MySQL安装时可能不会设置默认密码,而是使用auth_socket插件,允许通过sudo权限登录。这可能就是用户遇到的情况。用户可能尝试用空密码或者常见的密码,但实际需要调整认证方式。 接下来,用户需要如何找到默认密码?可能的情况是,对于某些安装方式,比如使用.deb包安装,初始密码可能存放在日志文件中,比如使用sudo grep 'temporary password' /var/log/mysqld.log或者类似的路径。但根据引用中的信息,Ubuntu可能不会生成临时密码,而是直接使用auth_socket。所以需要分情况讨论:如果是使用apt安装,可能没有默认密码,需要切换到sudo mysql登录,然后修改密码。如果用户是从其他方式安装,比如源码,可能会有不同的步骤。 用户提供的引用中有使用sudo mysqladmin设置密码的命令,这可能是在无法登录时重置密码的方法。但需要确保MySQL服务正在运行,并且用户有足够的权限执行该命令。 可能的解决方案步骤包括: 1. 尝试使用sudo mysql -u root直接登录,无需密码,因为auth_socket允许通过sudo访问。 2. 如果不行,检查是否有临时密码生成,可能在安装时的日志中。 3. 修改root用户的认证方式为mysql_native_password,并设置新密码。 4. 处理可能出现的权限问题,比如ERROR 1045。 还需要注意不同版本的UbuntuMySQL可能有不同的行为,比如Ubuntu 18.10更高版本可能默认使用auth_socket,而旧版本可能不同。同时,用户可能需要更新插件或刷新权限。 在生成相关问题时,应该涵盖常见的登录问题、修改密码的方法、认证插件的作用以及错误代码的解决方法。例如,如何处理访问被拒绝,如何修改root密码,以及auth_socketmysql_native_password的区别。 最后,确保回答结构清晰,分步骤说明,并引用提供的参考信息来支持步骤的正确性。比如引用[^1]提到修改认证方式,引用[^2]是设置密码的命令,引用[^4]涉及错误处理。</think>[用户可见层] ### Ubuntu系统中MySQL默认密码的解决方法 在Ubuntu系统中安装MySQL后,若无法使用默认密码登录,通常是由于`auth_socket`插件认证方式导致。以下是分步骤解决方案: #### 1. 验证安装方式与认证模式 - **通过apt安装的MySQL**:默认不设置密码,使用`auth_socket`插件允许通过系统权限登录。 - **手动安装或特定版本**:可能生成临时密码,需查看日志文件: ```bash sudo grep 'temporary password' /var/log/mysqld.log ``` #### 2. 使用系统权限登录MySQL 若未设置密码,直接通过`sudo`登录: ```bash sudo mysql -u root ``` 登录后需修改认证方式与密码: ```sql ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; FLUSH PRIVILEGES; ``` #### 3. 通过mysqladmin重置密码(若无法登录) 若已存在密码但忘记,停止MySQL服务后使用: ```bash sudo systemctl stop mysql sudo mysqld_safe --skip-grant-tables & mysql -u root ``` 在MySQL命令行中重置密码: ```sql UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root'; FLUSH PRIVILEGES; ``` 退出后重启服务: ```bash sudo systemctl restart mysql ``` #### 4. 处理常见错误 - **ERROR 1045 (28000)**:通常因密码错误或认证插件不匹配。确保使用`mysql_native_password`并检查密码。 ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值