我想下载并安装 SQL 服务器和 MySQL 以在 Ubuntu Linux 22.04 中执行我的查询。我遇到了很多问题,但现在我陷入了主要问题。当我运行时, 它显示了名为、、、、、dpkg -l | grep -i mysql
的各种 SQL 服务器。mysql-server
mysql-community
mysql-pluggins
mysql-community-client-core
mysql-common
mysql-community-client
我检查了 MySQL 和 MySQL-server 的版本,但没有显示任何内容,当我再次通过其安装命令安装它时,它给出了不同的依赖关系问题,如mssql-tools
、服务等。我不知道如何解决这个问题。任何人都可以配置这个问题,因为我在任何地方都找不到这个解决方案。
答案1
我不确定我是否完全理解了你的问题。但我还是会尝试一下。
第一步 - 清洁
由于似乎有些东西不能协同工作,因此请卸载所有内容,然后在干净的环境下重新安装。所以...
笔记
在继续操作之前,请务必备份 MySQL 或 SQL Server 中的所有重要数据
提供的命令假设您使用默认包管理器 (apt) 安装了 MySQL 和 SQL Server。如果您使用了其他方法(例如直接下载二进制文件),则可能需要相应地调整这些说明。
执行命令前务必仔细检查,以避免意外的数据丢失
删除 MySQL
sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
sudo apt-get autoremove
sudo apt-get autoclean
sudo rm -rf /etc/mysql /var/lib/mysql
sudo deluser mysql
sudo delgroup mysql
删除 SQL Server
sudo apt-get remove mssql-server
sudo rm -rf /var/opt/mssql /var/lib/mssql /etc/systemd/system/mssql-server.service.d
sudo deluser mssql
sudo delgroup mssql
第二步 - 准备
SQL 服务器
我不知道您之前是如何安装 SQL Server 的,但如果您使用 apt,几乎可以肯定您已经完成此操作。
$ sudo su
$ curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
$ curl https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list > /etc/apt/sources.list.d/mssql-server.list
$ exit
MySQL
无需准备。一如既往,已在仓库中
第三步 - 安装
$ sudo apt-get update
$ sudo apt-get install -y mssql-server mysql-server
配置
开始尝试它们的配置是很好的做法。幸运的是,在这两种情况下,您都有 2 个命令可以指导您完成所有操作,而且非常容易使用
MySQL
sudo mysql_secure_installation 建议:按照屏幕上的提示设置 root 密码、删除匿名用户、禁止 root 远程登录、删除测试数据库并重新加载权限表
SQL 服务器
sudo /opt/mssql/bin/mssql-conf setup
按照提示设置SA(系统管理员)密码并选择认证方式。
很高兴知道
- 它们是由不同的人制作的两个数据库,在完全不同的端口上运行。因此,它们可以在同一台机器上共存(但真正的问题是为什么)
- 您提到的所有工具都不会与微软“生态系统”产生冲突。
- 下次您遇到依赖冲突时,请将日志与您的问题放在一起
答案2
从你的问题来看,你似乎已经安装了 MySQL。你可以这样做来测试它是否正常工作:sudo mysql
。
MySQL
您所看到的“各种 SQL 服务器”(您这样称呼它们)dpkg -l | grep -i mysql
是与您的 MySQL 相关的包。您可以在最后一栏中阅读它们的用途。
例如:mysql-client
是MySQL database client binaries
。为了简化,这将安装该命令使用的软件mysql
。
SQL 服务器
从你的问题中看不出你想做什么,也不清楚你遇到的问题是什么。在我看来,你似乎想安装微软的 SQL Server。你可以按照微软的官方手册进行操作https://learn.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-ver16&tabs=ubuntu2204
下载微软的证书和来源列表:
curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | sudo tee /etc/apt/sources.list.d/mssql-server-2022.list
配置 apt 以使用正确的证书:
官方手册中没有这个步骤,但在我的情况下是必需的,因为我收到了这个错误:
W: 签名验证时出错。存储库未更新,将使用以前的索引文件。GPG 错误:https://packages.microsoft.com/ubuntu/22.04/mssql-server-2022jammy InRelease:由于公钥不可用,无法验证以下签名:NO_PUBKEY EB3E94ADBE1229CF
将 的内容替换
/etc/apt/sources.list.d/mssql-server-2022.list
为:deb [arch=amd64,armhf,arm64 signed-by=/usr/share/keyrings/microsoft-prod.gpg] https://packages.microsoft.com/ubuntu/22.04/mssql-server-2022 jammy main
安装 MS SQL Server:
sudo apt update sudo apt install mssql-server