linux rocky 9.2系统安装mysql-wsrep-8.4.2-26.20-linux-x86_64.tar.gz二进制包

1.环境准备,

①装好Rocky linux9.2系统,设置好IP

nmcli con mod ens160 ipv4.addresses 192.168.0.106/24

nmcli con mod ens160 ipv4.gateway 192.168.0.2

nmcli con mod ens160 ipv4.dns 114.114.114.114

nmcli con up ens160

nmcli con mod ens160 connection.autoconnect

nmcli con mod ens160 connection.autoconnect yes

②关闭防火墙和selinux

2.创建目录,上传数据库二进制包

mkdir -pv /app

yum -y install lrzsz (安装上传下载工具,或者其他上传方式)

3.解压 mysql-wsrep-8.4.2-26.20-linux-x86_64.tar.gz

root@localhost app\]# tar -zxvf mysql-wsrep-8.4.2-26.20-linux-x86_64.tar.gz 修改目录名称 \[root@localhost app\]# mv mysql-wsrep-8.4.2-26.20-linux-x86_64 mysql84226 ![](https://i-blog.csdnimg.cn/direct/9ad975842be640209aa5f826df670923.png) 参考企业按照安装路径和便于管理服务,把/app/mysql84226该目录移至/usr/local/下 ![](https://i-blog.csdnimg.cn/direct/2e81dc7397fd439f97766524c6b1b1d6.png) 4.创建数据库数据,日志等目录 mkdir -pv /usr/local/mysql84226/{data,log,tmp} ![](https://i-blog.csdnimg.cn/direct/745943da3f874c168dd048867bd97103.png) 5.创建mysql数据库服务用户和组,用于启动mysql服务和管理进程 groupadd mysql useradd -g mysql mysql ![](https://i-blog.csdnimg.cn/direct/ae9c0bbc252e4b03bb3fb8ac2368dec7.png) 6.授权/usr/local/mysql84226目录为mysql用户所有 chown -R mysql.mysql /usr/local/mysql84226/ ![](https://i-blog.csdnimg.cn/direct/0212eaf4dca548ddb73ead96f2f93590.png) 7.新建/etc/my.cnf文件 vim /etc/my.cnf # MySQL服务器程序的配置部分 \[mysqld

MySQL服务器安装的基本目录

basedir=/usr/local/mysql84226

MySQL服务器数据文件存放的目录

datadir=/usr/local/mysql84226/data

MySQL服务器通信的socket文件位置

socket=/usr/local/mysql84226/tmp/mysql.sock

MySQL服务器监听的端口号

port=3306

运行MySQL服务器的用户名

user=mysql

确保日志中使用系统时间

log_timestamps=SYSTEM

设置服务器校对集,utf8_unicode_ci不区分大小写

collation-server = utf8_unicode_ci

设置服务器默认字符集

character-set-server = utf8

lc-messages-dir=/usr/local/mysql84226/share/

指定默认的身份验证插件,以兼容老版本客户端

#default_authentication_plugin= mysql_native_password

此选项允许跳过权限表的认证,通常用于恢复或维护

#skip-grant-tables

MySQL服务器安全启动的配置部分

mysqld_safe

mysqld_safe进程的日志文件位置

log-error=/usr/local/mysql84226/log/mysqld_safe.err

mysqld_safe的pid文件存放位置

pid-file=/usr/local/mysql84226/tmp/mysqld.pid

mysqld_safe使用的socket文件位置

socket=/usr/local/mysql84226/tmp/mysql.sock

MySQL服务器启动脚本来使用的配置

mysql.server

如果需要,可以取消注释以指定MySQL的安装目录

#basedir=/usr/local/mysql-8.4.2/mysql-8.4.2

MySQL的数据文件存放目录

datadir=/usr/local/mysql84226/data

MySQL的socket文件位置

socket=/usr/local/mysql84226/tmp/mysql.sock

MySQL监听的端口号

port=3306

运行MySQL服务的用户名

user=mysql

8.初始化数据库

./bin/mysqld --user=mysql --basedir=/usr/local/mysql84226/ --initialize

可以看到数据库初始密码

9.生成systemctl 管理mysql数据库服务,引用support-files/mysql.server工具

vim /etc/systemd/system/mysqld.service

Unit

Description=Mysql

After=syslog.target network.target remote-fs.target nss-lookup.target

Service

Type=forking

#PIDFile=/usr/local/mysql/mysql8420/data/localhost.localdomain.pid

ExecStart=/usr/local/mysql84226/support-files/mysql.server start

#ExecReload=/bin/kill -s HUP $MAINPID

ExecReload=/usr/local/mysql84226/support-files/mysql.server restart

#ExecStop=/bin/kill -s QUIT $MAINPID

ExecStop=/usr/local/mysql84226/support-files/mysql.server stop

PrivateTmp=false

User=mysql

Group=mysql

Install

9.启动数据库服务

systemctl status mysqld

systemctl start mysqld

10.尝试登录,会报错,我这里不提前躲避,为了告诉大家怎么解决。

报错内容

./mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

解决思路:可以通过报错信息看出,缺乏libncurses.so.5库文件,我们找下系统是不是真的没有这个文件,如果没有就要下载安装,如果有更高的版本,是否可以尝试向下兼容。

我们可以看到,系统包含libncurses.so.6和libncurses.so.6.2,既然这样,我们做个软连接

解决办法:

ln -s /lib64/libncurses.so.6 /lib64/libncurses.so.5

做了软连接,我们可以看到,刚才的报错,不存在了,但是还存在缺失另一个库文件,解题思路一样

报错内容

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

解决办法:

ln -s /lib64/libtinfo.so.6 /lib64/libtinfo.so.5

到这里,两个错误都解决了,但是出现新的报错

报错内容:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解题思路:上面新建my.cof也提到了,MYSQL默认在/tmp/寻找mysql.sock,但是我们为了理所当然的安全,把mysq.sock放在/usr/local/mysql84226/tmp下,只要把这个文件弄过来即可,但是mysql.sock不能通过CP 命令复制,这里只能做软连接。

解决办法①:

ln -s /usr/local/mysql84226/tmp/mysql.sock /tmp/mysql.sock

可以看到,可以成功登录到数据库了,但是需要修改默认密码才能对数据库进一步操作。

报错内容:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解决方法②:

修改vim /etc/my.cnf

socket=/usr/local/mysql84226/tmp/mysql.sock

改为

socket=/tmp/mysql.sock即可

11.修改数据库密码

登录数据库,修改数据库密码:ALTER USER 'username'@'localhost' IDENTIFIED BY 'new_password';

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '12345@Admin';

Query OK, 0 rows affected (0.01 sec)

mysql>

相关推荐
bcbobo21cn34 分钟前
Linux命令的命令历史
linux·histsize·histfile
jingyu飞鸟1 小时前
linux系统源代码安装apache、编译隐藏版本号
linux·运维·apache
世事如云有卷舒1 小时前
Ubunt20.04搭建GitLab服务器,并借助cpolar实现公网访问
linux·服务器·gitlab
Little-Hu2 小时前
QML TextEdit组件
java·服务器·数据库
riverz12272 小时前
TCP backlog工作机制
服务器·网络·tcp/ip
2401_858286112 小时前
OS15.【Linux】gdb调试器的简单使用
linux·运维·服务器·开发语言·gdb
c30%004 小时前
内网渗透——红日靶场五
运维·服务器
发仔1234 小时前
Oracle与MySQL核心差异对比
mysql·oracle
zjw_rp4 小时前
centos停止维护后更换yum源
linux·运维·centos
宇钶宇夕5 小时前
EPLAN 电气制图:建立自己的部件库,添加部件-加SQL Server安装教程(三)上
运维·服务器·数据库·程序人生·自动化