Ubuntu安装mysql及更换源之后出现public key is not available: NO_PUBKEY gpg...问题

本文讲述了在Ubuntu环境下使用apt安装MySQL时遇到公钥验证失败的问题,介绍了如何通过替换keyserver地址和导入缺失公钥解决此类错误,以及更换源后aptupdate遇到类似问题的处理方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Ubuntu安装mysql出现public key is not available: NO_PUBKEY gpg: keyserver receive failed: Server indicated a failure

    在文章  Ubuntu下使用apt方式安装Mysql8.0版本-CSDN博客 中,安装mysql的过程中添加进mysql的源后,再执行apt-get更新源时可能会出现下面的错误。

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29
W: GPG error: http://repo.mysql.com/apt/ubuntu bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29

    根据报错提示是当前的公钥不可用,在之前的文章中提到过可用的方法,即使用apt-key adv --keyserver keyserver.ubuntu.com --recv-keys添加公钥。但最新使用时发现会报错gpg: keyserver receive failed: Server indicated a failure。通过直接ping域名也无法拼通。

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
Executing: /tmp/apt-key-gpghome.LT5PVsH00P/gpg.1.sh --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
gpg: keyserver receive failed: Server indicated a failure

    后在其它的例子中发现地址有变,于是改用了下面的地址:hkp://keyserver.ubuntu.com:80 添加成功。

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 467B942D3A79BD29
gpg: key 467B942D3A79BD29: public key "MySQL Release Engineering <mysql-build@oss.oracle.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
#MYSQL安装成功后可以使用以下命令进行服务管理
service mysql status/stop/start/restart
配置文件路径 :/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
pid-file	= /var/run/mysqld/mysqld.pid
socket		= /var/run/mysqld/mysqld.sock
datadir		= /var/lib/mysql
log-error	= /var/log/mysql/error.log

#卸载MySQL可使用如下命令:
sudo apt purge mysql-*
sudo rm -rf /etc/mysql/ /var/lib/mysql
sudo apt autoremove
sudo apt autoclean

二、ubuntu在更换源之后apt update出现public key is not available: : NO_PUBKEY 

    ubuntu环境中在更换源之后使用apt update更新源出现报错:The following signatures couldn't be verified because the public key is not available: : NO_PUBKEY XXXXXXXXXXXXXX 

test@test:~# apt-get update 
Err:6 https://download.docker.com/linux/ubuntu bionic InRelease
GPG error: The following signatures couldn't be verified because the public key is not available
The following signatures couldn't be verified because the public key is not available: : NO_PUBKEY XXXXXXXXXXXXXX

     问题中提示public key is not available公钥无效,缺失公钥。解决方法:从key server获得缺失的公钥XXXXXXXXXXXXXX,并导入公钥。

test@test:~# gpg --keyserver keyserver.ubuntu.com --recv XXXXXXXXXXXXXX
gpg: keybox '/root/.gnupg/pubring.kbx' created
test@test:~# gpg --export --armor XXXXXXXXXXXXXX| apt-key add -
OK
test@test:~# apt-get update
SUCCESS

     可用的key server有:keyserver.ubuntu.com     pgp.mit.edu     subkeys.pgp.net    www.gpg-keyserver.de

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林戈的IT生涯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值