MySql Linux 安装
创始人
2024-11-13 17:14:07
0

下载

在这里插入图片描述

下载后的文件为:mysql-8.4.2-linux-glibc2.28-x86_64.tar.xz

创建用户和用户组

$> groupadd mysql $> useradd -r -g mysql -s /bin/false mysql 

由于用户仅用于所有权目的,而不是登录目的,因此useradd命令使用 -r和-s /bin/false选项来创建不具有服务器主机登录权限的用户

解压缩

此处我们在 /opt/app/soft

$> cd /opt/app/soft $> tar xvf mysql-8.4.2-linux-glibc2.28-x86_64.tar.xz # 将文件夹改名为 mysql-8.4.2 $> mv mysql-8.4.2-linux-glibc2.28-x86_64 mysql-8.4.2 

设置环境变量

export PATH=$PATH:/opt/app/soft/mysql-8.4.2/bin 

注:要永久设置环境变量,请通过修改 ~/.bash_profile 或其它环境变量配置文件来修改

创建 my.cnf 文件

在 /opt/app/soft/mysql-8.4.2 (安装根路径下)创建 my.cnf 文件

[mysqld]  # mysql的安装目录,也就是我们解压的目录(注意分隔符的方向win和linux不一样) basedir= /opt/app/soft/mysql-8.4.2 # mysql数据库的数据的存放目录 datadir= /opt/app/soft/mysql-8.4.2/data # 默认使用的端口(这里我们修改为3608) port=3608  # 服务端使用的字符集utf8mb4就是mysql的utf8编码,mysql中的utf8编码很多汉字会乱码 character-set-server=utf8mb4 # 数据库字符集对应一些排序等规则使用的字符集 collation-server=utf8mb4_general_ci  # 允许最大连接数 max_connections=200 # 允许连接失败的次数 max_connect_errors=10 # 设置INNODB为默认存储引擎 default-storage-engine=INNODB   [mysql] # 默认字符集 default-character-set=utf8mb4   [client] default-character-set=utf8mb4 port=3608  

初始化数据目录

确保 libaio 已安装

# 查看 libaio $> rpm -q libaio 

如果没有安装,需要先安装此依赖。如果能够使用 yum 安装,可以使用如下命令

$> yum install libaio 

如果不能使用 yum 安装,请自行安装吧,这里不做详细介绍了

修改安装目录的权限

$> chown mysql:mysql /opt/app/soft/mysql-8.4.2 $> chmod 750 /opt/app/soft/mysql-8.4.2 

注:此处的 /opt/app/soft/mysql-8.4.2 就是你解压的文件根路径

执行初始化命令

$> mysqld --initialize-insecure --user=mysql 

初始化数据目录和windows安装一样,这里就不做过多解释了,需要的可以看我们上一篇 windows 安装。

启动 mysql 服务

$> mysqld_safe --user=mysql & 

设置 root 密码

我们在执行初始化命令时,没有使用 mysqld --initialize --console ,不会生成默认的 root 密码,所以我们需要自己设置

$> mysqladmin -u root password 

登录验证

$> mysql -u root -p Enter password:   mysql> select version(); +-----------+ | version() | +-----------+ | 8.4.2     | +-----------+ 1 row in set (0.00 sec)  mysql>  

远程连接

null, message from server: "Host ‘111.111.111.111’ is not allowed to connect

mysql> use mysql; mysql> update user set host = '%' where user='root'; mysql> flush privileges; 

host = ‘%’ 表示允许所有 IP 访问,必要时可以限定特定的 IP

Public Key Retrieval is not allowed

MySQL的 8 版本以后,客户端用户连接的认证方式是 caching_sha2_password,而之前认证方式默认为 mysql_native_password。当禁用 SSL/TLS 协议传输后,客户端会使用服务器的公钥进行传输,默认情况下客户端不会主动去找服务器拿公钥,进而会出现错误。

解决方式1

允许客户端使用公钥检索,jdbc 连接串中添加:

useSSL=false&allowPublicKeyRetrieval=true 

建议使用此方式

解决方式2

修改认证为 mysql_native_password

# 登录 MySQL 后执行 mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root用户对应的密码'; ## 刷新权限 mysql> FLUSH PRIVILEGES; 

相关内容

热门资讯

透视工具"impok... 透视工具"impoker辅助"本来有挂(透视)微扑克教程(有挂辅助)1、全新机制【impoker辅助...
透视透视!aapoker脚本(... 透视透视!aapoker脚本(透视)真的假的(一直有挂)1、超多福利:超高返利,海量正版游戏,aap...
透视有挂!aapoker安装包... 透视有挂!aapoker安装包怎么使用,素来是真的有挂(透视)大神讲解(有挂解密)1、操作简单,无需...
透视神器"uupok... 透视神器"uupoker透视"确实存在有挂(透视)新版2025教程(有挂解密)1、进入游戏-大厅左侧...
透视插件!aapoker安装包... 透视插件!aapoker安装包怎么使用(透视)辅助插件工具(其实存在有挂)1、aapoker安装包怎...
透视玄学!wepokerplu... 透视玄学!wepokerplus透视脚本免费,本来真的是有挂(透视)软件教程(有挂解说)wepoke...
透视系统"aapok... 透视系统"aapoker透视脚本入口"真是有挂(透视)2025版教程(有挂工具);1、任何aapok...
透视挂透视!aapoker辅助... 透视挂透视!aapoker辅助怎么用(透视)真的假的(好像有挂)1、玩家可以在aapoker辅助怎么...
透视真的!wejoker辅助器... 透视真的!wejoker辅助器怎么卖,先前真的是有挂(透视)我来教教你(有挂解密);1、不需要AI权...
透视教程"wepok... 透视教程"wepoker究竟有没有透视"确实有挂(透视)AI教程(有挂插件)运wepoker究竟有没...