Linux安装mysql【超详细】

一、下载安装包
1、查看是否已经安装了MySQL
javascript 复制代码
rpm -qa | grep mysql
2、查看系统位数
javascript 复制代码
getconf LONG_BIT
3、下载MySQL

MySQL官网地址

4、也可以直接在服务器执行指令下载,但是下载速度比较慢。还是自己下载好拷贝过来比较快。
javascript 复制代码
wget https://dev.mysql.com/get/Downloads/mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz
二、安装
1、新建/usr/local/tools文件夹,把下载好的包放进来
2、解压安装
javascript 复制代码
// 解压缩
tar -xvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz 
// 修改文件名称
mv mysql-5.7.38-linux-glibc2.12-x86_64/ mysql
// 删除压缩包(也可以不删)
rm -f mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz 
3、创建MySQL用户组、组名
javascript 复制代码
// 创建用户组
groupadd mysql
// 添加MySQL用户并添加到MySQL用户组
useradd -r -g mysql mysql
4、创建数据目录并开启权限
4.1、mysql目录下新建文件夹data
javascript 复制代码
mkdir data 
4。2、开启权限
javascript 复制代码
chown -R mysql:mysql /usr/local/mysql/
5、编辑my.cnf文件

/etc/my.cnf,如果没有这个文件需要手动创建

javascript 复制代码
vim /etc/my.cnf

在Linux中使用vi或vim编辑器时,保存文件并退出的步骤如下:

  • 保存文件:按下Esc键确保你不在插入模式中,然后输入:w并按Enter键。这会将你的更改保存到当前打开的文件中。

  • 退出编辑器:保存文件后,你可以输入:q并按Enter键来退出编辑器但是,如果你的文件自上次保存以来已经被修改过,vim会阻止你退出,以防止丢失更改

  • 保存并退出:如果你想要保存更改并退出,可以输入:wq并按Enter键。这会保存文件并退出编辑器。

  • 强制退出:如果你想要退出而不保存更改,可以输入:q!并按Enter键。这会放弃所有未保存的更改并退出编辑器。

  • 保存所有更改并退出:如果你打开了多个文件并想要保存所有更改并退出,可以输入:wqa并按Enter键。这会保存所有更改的文件并退出编辑器。

记住,vim有三种模式:普通模式(Normal mode)、插入模式(Insert mode)和命令模式(Command mode)。上述命令都是在普通模式下输入的。如果你不小心进入了插入模式,只需按Esc键即可返回普通模式。
修改文件的内容

javascript 复制代码
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用"mysql_native_password"插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
6、初始化mysql

/usr/local/mysql/bin目录下执行命令

javascript 复制代码
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --user=mysql --initialize
  • ./mysqld:这是MySQL服务器的可执行文件。
  • --defaults-file=/etc/my.cnf:指定MySQL配置文件的位置。
  • --basedir=/usr/local/mysql:指定MySQL安装的基目录。
  • --datadir=/usr/local/mysql/data:指定MySQL数据文件存储的目录。
  • --user=mysql:指定运行MySQL服务的用户。
  • --initialize:初始化MySQL数据目录。
7、启动服务

/usr/local/mysql/support-files/mysql.server start

8、修改密码
typescript 复制代码
// 切换目录
cd /usr/local/mysql/bin
// 登录命令
./mysql -u root -p
// 修改密码
set password for root@localhost=password('root');
#刷新权限
FLUSH PRIVILEGES;
9、navicat远程连接报错1130

连接之前一定要开启服务器的对应端口

解决办法

typescript 复制代码
// 进入mysql
./mysql -u root -p 再输入密码后进入mysql
// 访问mysql库
use mysql
// 修改root用户能在任何host访问(授权远程连接)
update user set host = '%' where user = 'root';
// 刷新状态
FLUSH PRIVILEGES;

相关linux指令

  • 使用netstat -tulnp | grep 3306检查端口3306是否被占用。
  • sudo lsof -i :3306这将列出所有使用3306端口的进程及其相关信息。
相关推荐
代码中の快捷键6 分钟前
MySQL数据库存储引擎
数据库·mysql
东华果汁哥7 分钟前
【linux 免密登录】快速设置kafka01、kafka02、kafka03 三台机器免密登录
linux·运维·服务器
咖喱鱼蛋28 分钟前
Ubuntu安装Electron环境
linux·ubuntu·electron
ac.char32 分钟前
在 Ubuntu 系统上安装 npm 环境以及 nvm(Node Version Manager)
linux·ubuntu·npm
肖永威38 分钟前
CentOS环境上离线安装python3及相关包
linux·运维·机器学习·centos
tian2kong41 分钟前
Centos 7 修改YUM镜像源地址为阿里云镜像地址
linux·阿里云·centos
六月闻君42 分钟前
MySQL 报错:1137 - Can‘t reopen table
数据库·mysql
布鲁格若门1 小时前
CentOS 7 桌面版安装 cuda 12.4
linux·运维·centos·cuda
C-cat.1 小时前
Linux|进程程序替换
linux·服务器·microsoft
dessler1 小时前
云计算&虚拟化-kvm-扩缩容cpu
linux·运维·云计算