mysql-8.0.32 数据库的安装 (Linux)

Linux 中 mysql-8.0.32 数据库的安装

  • 步骤
  • 常见问题解决方案
    • 问题一. mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
    • 解决方案:
      • 方案一(推荐):
      • 方案二:
      • 方案三:
    • 问题二:Starting MySQL.. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysql.pid).

再写一个,写完就睡。

步骤

直接上代码了!

首先,下载mysql-8.0.32,(我提供了两个下载地址,一个是tar.gz,一个是tar.xz):
mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz下载地址:https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz
mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz下载地址:https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz

也可自己去官网下载,地址:https://downloads.mysql.com/archives/community/

前面的创建用户顺序和之前写过的一样,如果忘了再去复习一边,链接:https://blog.csdn.net/u011561335/article/details/102813290

如果不想去,下面就简单说下
首先是创建用户和组:

groupadd mysql
useradd -r -g mysql  mysql

操作配置文件:

#创建配置文件
vim /etc/my.cnf
#如果存在,可能是卸载那篇文章忘了写了,备份或者删除都行,看自己需要。

保存以下内容:

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.err
pid-file=/usr/local/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

创建pid文件,命令:

echo > /usr/local/mysql/data/mysql.pid;

接着解压归档文件,命令:

#方案一:解压tar.gz归档文件
tar -zxvf mysql-8.0.32-linux-glibc2.17-aarch64.tar.gz 
#方案二:解压tar.xz归档文件
tar xvf /path/to/mysql-VERSION-OS.tar.xz
#移动至安装目录(执行自己的解压文件至指定目录,下面两条命令选与自己一致的版本。)
#算了,我同意用tar.xz解压出来的文件,tar.gz的好像有问题。自行探索吧。
#mv mysql-8.0.32-linux-glibc2.17-aarch64 /usr/local/mysql 
mv mysql-8.0.32-linux-glibc2.12-x86_64 /usr/local/mysql

切换目录

cd /usr/local/mysql

创建data目录并授权

mkdir data
chown mysql:mysql data
chmod 750 data

执行初始化命令

bin/mysqld --initialize --user=mysql

待执行完毕后,执行命令查看密码

cat /usr/local/mysql/data/mysql.err |grep localhost
2023-06-07T17:22:59.977793Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 0Hhbr0/s-k9r

具体执行过程如下图:
mysql-8.0.32 数据库的安装 (Linux)_第1张图片
继续执行命令支持ssl安全连接(查的相关资料)

bin/mysql_ssl_rsa_setup

安全启动mysql(查的相关资料)

bin/mysqld_safe --user=mysql &

验证mysql是否启动成功:

lsof -i :3306
COMMAND    PID  USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
mysqld  195521 mysql   23u  IPv4 1396172      0t0  TCP *:mysql (LISTEN)

启动完毕,截图如下
截图
将mysql执行文件添加至环境变量
(这个就没有写到解决方案里面了,因为肯定会存在-bash: mysql: command not found这种问题,比着弄就行)。

#临时添加
export PATH=$PATH:/usr/local/mysql/bin

永久添加到环境变量需要编辑环境变量的配置文件/etc/profile,添加以下代码:

MYSQL=/usr/local/mysql/bin
export PATH=$PATH:$MYSQL

截图如下:
mysql-8.0.32 数据库的安装 (Linux)_第2张图片
最后,重新加载配置,命令:

source /etc/profile

通过命令进入数据库:

[root@ip-172-31-26-110 ~]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.32

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

截图如下:
mysql-8.0.32 数据库的安装 (Linux)_第3张图片
然后是修改密码,命令:

ALTER USER USER() IDENTIFIED BY '123456';

如果服务器重启了,手动启动命令:

 ./mysql.server start

配置开机启动,命令:

cd /usr/local/mysql
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
systemctl enable mysqld

至此,安装完毕!

常见问题解决方案

问题一. mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

在使用mysql进行数据库连接时报错,具体内容是缺少依赖,使用命令查看缺少哪些依赖

ldd /usr/local/mysql/bin/mysql  

截图过下,通过返回内容,可以看到缺少依赖libtinfo.so.5,当然,从报错内容中也能看出来。

解决方案:

方案一(推荐):

搜索服务器上已有的依赖,通过链接方式对应,命令:

ln -s /usr/lib64/libtinfo.so.6.2 /usr/lib64/libtinfo.so.5

方案二:

从其他服务器下载此文件上传至服务器,提供了一个我自己的csdn链接(5积分),包含了5和6两个版本:https://download.csdn.net/download/u011561335/87885150

下载后,执行命令:

#先切换到文件所在目录
cd 下载文件所在目录
unzip libtinfo.so(包含5和6两个).zip
cd 解压文件夹 
mv libtinfo.so.5 /usr/lib64

方案三:

从网上下载安装包后安装(本机测试时候发现又要安装别的依赖,放弃了,有兴趣的试一下,不能用的话告诉我一声),
下载地址:添加链接描述
安装命令:

rpm -ivh ncurses-libs-5.9-14.20130511.el7_4.aarch64.rpm

另外,感谢轻声低语的博文,参考链接:https://blog.csdn.net/weixin_54795972/article/details/129130438

今天就写到这,当前时间:2023-06-08 02:09

搜到了另一个tar.gz 归档文件的博文,感觉还不错,我就不写tar.gz了,直接放链接:https://blog.csdn.net/god_sword_/article/details/124649761

蜚语:高考期间,考生加油!回首今日,你也可以骄傲:我为自己拼过命,我曾努力奔跑任狂风呼啸!
当前时间:2023-06-09 12:09

问题二:Starting MySQL… ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysql.pid).

问题描述:

[root@ip-172-31-26-110 iceter]# systemctl status mysqld.service
× mysqld.service - LSB: start and stop MySQL
     Loaded: loaded (/etc/rc.d/init.d/mysqld; generated)
     Active: failed (Result: exit-code) since Fri 2023-06-09 08:02:48 UTC; 11s ago
   Duration: 1min 49.460s
       Docs: man:systemd-sysv-generator(8)
    Process: 4749 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=1/FAILURE)
        CPU: 796ms

Jun 09 08:02:46 ip-172-31-26-110.ec2.internal systemd[1]: Starting LSB: start and stop MySQL...
Jun 09 08:02:48 ip-172-31-26-110.ec2.internal mysqld[4749]: Starting MySQL.. ERROR! The server quit without updating PID file (/usr/local/mysql/data/mysql.pid).
Jun 09 08:02:48 ip-172-31-26-110.ec2.internal systemd[1]: mysqld.service: Control process exited, code=exited, status=1/FAILURE
Jun 09 08:02:48 ip-172-31-26-110.ec2.internal systemd[1]: mysqld.service: Failed with result 'exit-code'.
Jun 09 08:02:48 ip-172-31-26-110.ec2.internal systemd[1]: Failed to start LSB: start and stop MySQL.

此问题是由于没有成功创建pid文件导致,命令创建:

vim /usr/local/mysql/data/mysql.pid;
#或
echo > /usr/local/mysql/data/mysql.pid;

你可能感兴趣的:(linux,mysql,数据库)