繁体   English   中英

尝试在 Ubuntu 18.04 上将 MySQL 服务器从 5.7 升级到 8.0 时出错

[英]Errors while trying to upgrade MySQL server from 5.7 to 8.0 on Ubuntu 18.04

我不知道是我做的不对,还是出现了一些我看不到的缺陷。 以下是我尝试设置服务器的步骤,但我一定遗漏了一些东西。

1)添加APT存储库:

$ wget https://repo.mysql.com//mysql-apt-config_0.8.14-1_all.deb

$ sudo dpkg -i mysql-apt-config_0.8.14-1_all.deb

2) 配置 mysql-apt-config 屏幕

Select MySQL 服务器和集群(当前选择:mysql 8.0)

Select mysql-8.0 作为要接收的服务器版本

最后,select ok

3)更新安装MySQL服务器

$ sudo apt-get 更新

$ sudo apt-get 安装 mysql-server

当我这样做时,以下显示:

我得到的错误

我输入命令“mysql -u root -p”并输入我的密码。 终端显示错误2002 (HY000): can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)。 我使用命令“sudo find / -type s”搜索 sock,但该套接字未显示在列表中。 通过文件和终端,我导航到目录“/var/run/mysqld”,并希望找到一些文件,但那里什么也没有。 到目前为止,我已经尝试从我的机器上完全卸载 mysql 并重新安装,但得到相同的结果。 否则,Ubuntu 已经升级和更新,我有 MySQL Workbench 8.0.20。

我设法让一切正常工作。 我能够进行安装,但最终可能会丢失我的数据库,所以我将不得不重新创建它。

这个来源非常有帮助:

https://unix.stackexchange.com/questions/389747/error-processing-package-mysql-community-server-during-apt-get-upgrade

这个实验室没问题,在基于 Ubuntu 18 & + 和 Ubuntu 18 的发行版上

许多人犯了很多基本错误。 有时他们不会很好地卸载 mariadb 或 mysql。 有时同时安装:mariadb 和 mysql。

所以让我们假设您想要设置 LAMP((Linux、Apache、MySQL、PHP)堆栈试试这个实验室

首先执行此操作以检查您的 DBMS(数据库管理系统)

dpkg -l | grep -e mysql-server -e mariadb-server

但我现在建议您使用 mariadb。 所以让我们假设您选择 mariadb

做这个实验室

杀死所有 mysql 进程

sudo service mysql stop 
sudo killall -9 mysql 
sudo killall -9 mysqld



sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-5.7 mysql-client-core-5.7  
            
sudo apt-get remove --purge mysql* 
sudo apt-get purge mysql*
sudo apt-get remove dbconfig-mysql 

sudo apt-get autoremove
sudo apt-get autoclean

删除 mysql 旧文件

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

更新

sudo apt-get dist-upgrade -y
sudo apt update

=============================|

如果您安装了 phpmyadmin,请将其移除

卸下旧 phpmyadmin

sudo apt-get -f install
sudo dpkg -P phpmyadmin  
sudo rm -vf /etc/apache2/conf.d/phpmyadmin.conf
sudo rm -vfR /usr/share/phpmyadmin

sudo apt-get autoremove -y
sudo apt-get autoclean

sudo service apache2 restart

=============================|

然后快速灯设置

sudo apt-get update 
sudo apt-get upgrade  -y 

安装 APACHE2 和 MARIADB 服务器

sudo apt install apache2 php libapache2-mod-php mariadb-server php-mysql -y

安装这些有用的 php 包

sudo apt install  php-curl php-gd php-intl php-json php-mbstring php-xml php-zip -y

安装 phpmyadmin

sudo apt install phpmyadmin -y

注意:一些答案:

创建 phpmyadmin 数据库:不选择 web 服务器进行配置:apache2

=============================|

一些配置:

根访问权限

从 Bionic 18.04 开始使用 MySQL,从 Xenial 16.04 开始使用 MariaDB,MySQL 的身份验证使用插件完成。 此方法不允许与 phpMyAdmin 连接,但强烈建议不要修改此行为。

如果您需要从同一帐户全局访问数据库,推荐的解决方案是创建一个新用户并授予他所有权限:

为 MariaDB phpmyadmin 创建数据库和关联用户

假设:用户:我 数据库:MyDB 密码:1234

做这个:

sudo mariadb

CREATE DATABASE MyDB;GRANT ALL PRIVILEGES ON MyDB.* TO'me'@'localhost' IDENTIFIED BY '1234';

FLUSH PRIVILEGES;
GRANT ALL ON *.* TO 'moi'@'localhost' IDENTIFIED BY '1234' WITH GRANT OPTION;

FLUSH PRIVILEGES;
QUIT;

=============================|

测试一切正常

尝试访问 phpmyadmin

首先这样做以避免任何错误

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

sudo /etc/init.d/apache2 restart

所以打开你的 web 浏览器 go 到
http://localhost/phpmyadmin

您的凭据是:用户:我密码:1234

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM