Ubuntu22.04中mysql8 rpm安装

1、安装依赖

复制代码
sudo apt update
sudo apt -y dist-upgrade 
sudo apt -y install vim net-tools wget gcc make cmake lrzsz
sudo apt -y install libmecab2 libjson-perl 

2、下载rpm文件

https://dev.mysql.com/downloads/mysql/

复制代码
https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-server_8.0.40-1ubuntu22.04_amd64.deb-bundle.tar

3、执行命令安装

复制代码
安装依赖包
sudo dpkg -i mysql-common_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i libmysqlclient21_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i libmysqlclient-dev_8.0.40-1ubuntu22.04_amd64.deb

安装客户端组件
sudo dpkg -i mysql-community-client-core_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-community-client_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-client_8.0.40-1ubuntu22.04_amd64.deb

安装服务端组件
sudo dpkg -i mysql-community-server-core_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-community-server_8.0.40-1ubuntu22.04_amd64.deb
sudo dpkg -i mysql-server_8.0.40-1ubuntu22.04_amd64.deb

配置 MySQL
安装过程中会提示设置 MySQL root 用户的密码。根据提示完成安装。

 
sudo apt-get install -f


sudo dpkg -i mysql-{common,community-client,community-client-core,community-client-plugins,client,community-server,community-server-core,server}_*.deb
复制代码
select host , user , plugin ,authentication_string from mysql.user;

ALTER USER 'root'@'localhost' IDENTIFIED BY 'lihaozhe';
flush privileges;

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'lihaozhe';
flush privileges;

update mysql.user set host = '%',plugin='mysql_native_password' where user='root';
flush privileges;

quit;

sudo systemctl restart mysql

4、安装目录如下

复制代码
主配置文件:/etc/mysql/my.cnf 或 /etc/mysql/mysql.conf.d/mysqld.cnf
说明:主配置文件中可以修改 datadir、bind-address、skip-name-resolve 等参数。


数据文件路径
数据目录:/var/lib/mysql
说明:存储所有数据库的数据文件,需确保 mysql:mysql 拥有该目录的读写权限。



日志文件路径
错误日志:/var/log/mysql/error.log
说明:记录 MySQL 启动、运行中的错误信息以及其他日志内容。


服务与启动路径
Systemd 服务文件:/lib/systemd/system/mysql.service
说明:通过以下命令管理 MySQL 服务:

bash
复制代码
sudo systemctl start mysql   # 启动服务
sudo systemctl stop mysql    # 停止服务
sudo systemctl restart mysql # 重启服务
sudo systemctl status mysql  # 查看服务状态


客户端工具路径
MySQL 命令行工具:
/usr/bin/mysql
/usr/bin/mysqldump
说明:使用 mysql 连接数据库,使用 mysqldump 导出数据库。


其他相关文件
PID 文件:
/var/run/mysqld/mysqld.pid
Socket 文件:
/var/run/mysqld/mysqld.sock

5、 配置外网访问

MySQL 默认会尝试通过主机名解析客户端的 IP 地址,可能导致网络访问速度变慢。通过禁用主机名解析可以解决这个问题:编辑 `/etc/mysql/mysql.conf.d/mysqld.cnf` 文件,添加以下内容:

复制代码
[mysqld]
skip-name-resolve

创建外网访问用户

复制代码
CREATE USER 'root'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

6、常用命令

复制代码
重启
sudo systemctl restart mysql



sudo systemctl stop mysql

sudo systemctl start mysql

sudo systemctl enable mysql
相关推荐
SH11HF1 天前
小菜狗的云计算之旅,今天学习MySQL数据库基础知识及操作
adb
@Ryan Ding1 天前
MySQL主从复制与读写分离概述
android·mysql·adb
feifeigo1231 天前
升级到MySQL 8.4,MySQL启动报错:io_setup() failed with EAGAIN
数据库·mysql·adb
Edingbrugh.南空2 天前
Flink MySQL CDC 环境配置与验证
mysql·adb·flink
陈卓4102 天前
MySQL-主从复制&分库分表
android·mysql·adb
ladymorgana2 天前
【docker】修改 MySQL 密码后 Navicat 仍能用原密码连接
mysql·adb·docker
好奇的菜鸟4 天前
如何在Ubuntu上检查MySQL是否启动并放开3306端口
mysql·ubuntu·adb
OneT1me4 天前
adb shell中执行system用户权限命令的方法
adb
Polaris_YJH4 天前
360安全卫士占用5037端口(ADB端口)解决方案
adb·端口占用·5037
雨之小14 天前
RK3588调试之旅:adbd服务配置全攻略
adb·rk3588