Linux安装mysql【超详细】
一、下载安装包
1、查看是否已经安装了MySQL
rpm -qa | grep mysql
2、查看系统位数
getconf LONG_BIT
3、下载MySQL
MySQL官网地址
4、也可以直接在服务器执行指令下载,但是下载速度比较慢。还是自己下载好拷贝过来比较快。
wget https://dev.mysql.com/get/Downloads/mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz
二、安装
1、新建/usr/local/tools文件夹,把下载好的包放进来
2、解压安装
// 解压缩
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用户组、组名
// 创建用户组
groupadd mysql
// 添加MySQL用户并添加到MySQL用户组
useradd -r -g mysql mysql
4、创建数据目录并开启权限
4.1、mysql目录下新建文件夹data
mkdir data
4。2、开启权限
chown -R mysql:mysql /usr/local/mysql/
5、编辑my.cnf文件
/etc/my.cnf
,如果没有这个文件需要手动创建
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键即可返回普通模式。
修改文件的内容
[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目录下执行命令
./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、修改密码
// 切换目录
cd /usr/local/mysql/bin
// 登录命令
./mysql -u root -p
// 修改密码
set password for root@localhost=password('root');
#刷新权限
FLUSH PRIVILEGES;
9、navicat远程连接报错1130
连接之前一定要开启服务器的对应端口
解决办法
// 进入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端口的进程及其相关信息。