Linux安装mysql

  1. 下载mysql

输入官方社区版下载网站:https://dev.mysql.com/downloads/

进入到一下界面

选择之后点击下载mysql

  1. 上传并解压软件包到系统

这边上传到linux服务器用什么软件看自己的情况我这边用的xftp将文件上传到/usr/local文件夹里

  1. 解压文件并重命名为mysql

执行

tar -xvf mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz 

解压后改名为mysql

4.根据官网文档完成安装(以下是我从官网文档复制过来的)

警告

  • 如果您以前使用您的操作安装了 MySQL 系统原生包管理系统,如 Yum 或 APT, 使用本机二进制文件进行安装时可能会遇到问题。 确保您以前的MySQL安装已被删除 完全(使用您的包管理系统),并且任何 其他文件,例如数据文件的旧版本, 也被删除了。您还应该检查 配置文件,如或目录和删除 他们。/etc/my.cnf/etc/mysql

有关将第三方软件包替换为 官方 MySQL 软件包,参见相关 APT 指南百胜 指南

  • MySQL依赖于库。数据目录初始化和后续服务器 如果未在本地安装此库,则启动步骤将失败。 如有必要,请使用适当的软件包进行安装 经理。例如,在基于 Yum 的系统上:libaio

$> yum search libaio# search for info$> yum install libaio# install library

或者,在基于 APT 的系统上:

$> apt-cache search libaio# search for info$> apt-get install libaio1# install library
  • Oracle Linux 8 / Red Hat 8 (EL8):默认情况下,这些平台不安装文件,这是必需的 由 MySQL 客户端 bin/mysql 用于包和 . 要变通解决此问题,请安装软件包:/lib64/libtinfo.so.5mysql-VERSION-el7-x86_64.tar.gzmysql-VERSION-linux-glibc2.12-x86_64.tar.xzncurses-compat-libs

$> yum install ncurses-compat-libs

安装压缩的 tar 文件二进制文件 分发,在您选择的安装位置打开包装 (通常)。这将创建 下表中显示的目录。/usr/local/mysql

表 2.3 通用 Unix/Linux 二进制包的 MySQL 安装布局

目录

目录目录

bin

MySQLd服务器,客户端和实用程序

docs

信息格式的 MySQL 手册

man

Unix 手册页

include

包括(头)文件

lib

图书馆

share

用于数据库安装的错误消息、字典和 SQL

support-files

杂项支持文件

mysqld 二进制文件的调试版本可用 作为 mysqld-debug。编译自己的调试 源代码分发版中的 MySQL 版本,使用适当的 用于启用调试支持的配置选项。请参见第 2.8 节 “从源代码安装 MySQL”。

要安装和使用 MySQL 二进制发行版,命令序列 看起来像这样:

$> groupadd mysql
$> useradd-r-g mysql -s /bin/false mysql
$> cd /usr/local
$> tar xvf /path/to/mysql-VERSION-OS.tar.xz
$> ln-sfull-path-to-mysql-VERSION-OS mysql
$> cd mysql
$> mkdir mysql-files
$> chown mysql:mysql mysql-files
$> chmod 750 mysql-files
$> bin/mysqld--initialize--user=mysql$> bin/mysql_ssl_rsa_setup$> bin/mysqld_safe--user=mysql &
# Next command is optional$> cp support-files/mysql.server /etc/init.d/mysql.server

注意

此过程假定您具有对系统的(管理员)访问权限。或者,您可以 使用 sudo (Linux) 或 pfexec (Solaris) 命令为每个命令添加前缀。root

5.安装依赖库

  1. 分别执行这两个指令

yum search libaio              
yum install libaio
  1. 再执行

 yum install ncurses-compat-libs

6.添加用户、设置权限

依次执行以下指令

groupadd mysql

useradd -r -g mysql -s /bin/false mysql

cd /usr/local

cd mysql

mkdir mysql-files

chown mysql:mysql mysql-files

chmod 750 mysql-files

7.初始化数据库

bin/mysqld --initialize --user=mysql

有的人可能会出现这个问题:

执行bin/mysqld --initialize --user=mysql报以下错误

[System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.32) initializing of server in progress as process 9477

[ERROR] [MY-013276] [Server] Failed to set datadir to '/usr/local/mysql/data/' (OS errno: 13 - Permission denied)

[ERROR] [MY-013236] [Server] The designated data directory /usr/local/mysql/data/ is unusable. You can remove all files that the server added to it.

[ERROR] [MY-010119] [Server] Aborting

[System] [MY-010910] [Server] /usr/local/mysql/bin/mysqld: Shutdown complete (mysqld 8.0.32) MySQL Community Server - GPL.

这个错误提示是无法设置MySQL的数据目录,原因是没有足够的权限。可以使用sudo命令来以超级管理员身份运行mysqld命令,并确保指定的数据目录存在并且有足够的权限。例如,如果你想要将数据目录设置为/usr/local/mysql/data/,可以尝试以下命令:

sudo mkdir -p /usr/local/mysql/data/
sudo chown -R mysql:mysql /usr/local/mysql/

其中,第一行命令创建数据目录,第二行命令将目录所有者更改为mysql用户和组(确保你已经创建了mysql用户和组)

8.安装ssl证书

注意:这里需要mysql目录下执行

bin/mysql_ssl_rsa_setup

9.复制服务文件

cp support-files/mysql.server /etc/init.d/mysql.server

10.开启服务

bin/mysqld_safe --user=mysql &

11.使用root用户登录并更改root用户密码

登录

bin/mysql -uroot -p

这边是要用到上面的初始化密码,这边登录进去了但提示我们必须重置密码

修改密码,并设置为任意IP与第三方客户端可登录

# 修改root的密码与加密方式
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码' PASSWORD EXPIRE NEVER;
# 切换到mysql库
use mysql;
# 更改可以登录的IP为任意IP
update user set host='%' where user = 'root';
# 刷新权限
flush privileges;
# 再次更改root用户密码,使其可以在任意IP访问
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
# 刷新权限
flush privileges;

修改root的密码与加密方式(提示没重置密码什么都执行不了)

切换到mysql库并查询访问权限(发现只能本机)

select host,user from user;

更改可以登录的IP为任意IP和刷新权限

再次更改root用户密码,使其可以在任意IP访问

更改好之后,退出,并使用新密码重新登录,数据库便可以使用了!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值