网站首页 > 技术文章 正文
ubuntu22 默认安装mysql8, 安装后与之前的mysql5.7的区别
表区分大小写配置问题, create user 后才能grant
1 - 下载并安装MySQL服务器和客户端
由于本指南中使用的 Ubuntu 20.04 在 APT 仓库中只有 MySQL 8.0,因此我们需要先添加 MySQL 5.7 仓库后再安装。
第 1 步:添加 MySQL 5.7 APT 存储库
1.1 通过执行以下命令下载MySQL存储库:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb
1.2 成功下载MySQL包后,安装它:
sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb
1.3 接下来,选择Ubuntu Bionic。
之后,选择MySQL服务器和集群选项。然后,选择 mysql-5.7,最后选择确定。
1.4 接下来,更新 APT 仓库:
sudo apt update
注意
如果遇到如下所示的“无法验证签名”错误: NO_PUBKEY 467B942D3A79BD29,您需要通过运行以下命令导入缺少的 gpg 密钥:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
1.5 然后再次执行 apt update:
sudo apt update
要检查 MySQL 5.7 存储库是否已成功安装,请执行:
sudo apt-cache policy mysql-server
您应该在列表底部看到 MySQL 5.7 存储库。
第 2 步:安装 MySQL 5.7
2.1 现在您的系统中已经有了 MySQL 5.7 存储库,您可以继续安装它。为此,请运行以下命令:
sudo apt install -f mysql-client=5.7* mysql-community-server=5.7* mysql-server=5.7*
2.2 按 Y 开始安装,并在询问时设置 root 密码。
2 - 保护您的 MySQL root 用户帐户
在开始使用 MySQL 5.7 之前,您需要先对其进行保护。为此,请使用以下命令:
sudo mysql_secure_installation
在系统提示时提供密码,然后回答安全问题。
3 – 检查MySQL版本
想要确保正确安装所有内容吗?您可以通过检查当前的MySQL版本来做到这一点。首先,您需要使用之前设置的 root 密码登录 MySQL。
mysql -u root -p
之后,执行以下命令:
SELECT VERSION();
您应该会看到已安装的MySQL版本。
4 - 添加MySQL用户并设置权限
若要在 Ubuntu 上创建新的 MySQL 用户帐户,请使用以下命令:
CREATE USER 'username'@'localhost' IDENTIFIED BY 'user_password';
注意
要允许用户远程访问 Ubuntu 上的 MySQL,我们建议创建一个可以从特定 IP 地址 ('username'@'192.168.1.100') 或任何主机 ('username'@'%') 访问的用户。
现在我们已经创建了一个新帐户,我们可以向它授予权限。假设,我们希望授予用户创建和选择数据库对象的权限。为此,我们运行:
GRANT CREATE, SELECT ON *.* TO 'username'@'localhost';
如果要获取MySQL中所有用户的列表,请执行以下命令:
SELECT user FROM mysql.user;
正如你所看到的,我们在创建新用户的努力中取得了成功。
5 - 测试 MySQL 5.7
安装后,MySQL服务器会自动开始运行。但是,如果需要验证,请执行以下命令:
sudo systemctl status mysql
输出应显示服务处于活动状态。
6 – 登录到您的 MySQL 服务器
最后,您需要登录MySQL。为此,只需执行:
mysql -u root –p
现在,您已准备好在 Ubuntu 上使用 MySQL 5.7。您可以创建数据库、用数据填充它们、执行查询等等。祝你好运!
- 上一篇: Aliyun ecs上安装Mysql
- 下一篇: 官方教程:如何创建MySql数据库?
猜你喜欢
- 2024-12-14 如何配置全世界最小的 MySQL 服务器
- 2024-12-14 ubuntu(linux)系统使用技巧总结
- 2024-12-14 Linux安装基于rsyslog+loganalyzer的日志系统教程
- 2024-12-14 使用 Nginx 作为 MySQL 的 TCP 负载均衡器
- 2024-12-14 基于Docker一键LNMP(Nginx+MySQL+PHP7/5+Redis)安装程序
- 2024-12-14 mysql的主从搭建以及实现主从切换方法
- 2024-12-14 宝塔面板Linux版本常用命令有哪些?
- 2024-12-14 Ubuntu Linux部署免费HTTPS证书的步骤
- 2024-12-14 WSL 服务自动启动的正确方法
- 2024-12-14 一分钟搭建MySQL InnoDB Cluster高可用集群
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (87)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)