站起来活动活动吧~

编程开发

Linux(systemd)手动离线安装二进制(binary)MairaDB数据库指定版本

2024年12月10日 11:32:58 · 本文共 2,021 字阅读时间约 7分钟 · 255 次浏览
Linux(systemd)手动离线安装二进制(binary)MairaDB数据库指定版本

有些情况下我们无法使用 apt/yum 管理器安装 MairaDB 数据库,或者我们想为数据库集群安装完全一样的 MairaDB 数据库版本,我这次手动安装的动机就是因为我想组建 MairaDB 数据库集群,并且安装一模一样的数据库版本,方便管理。

前置条件

在开始之前,我先说明我的安装环境,软件这方面很玄学,运行环境不一样,可能出现奇奇怪怪的问题,而且我的配置是针对我的环境优化配置的,可能并不适合你,所以我先声明我所在的环境信息:

  • OS:Ubuntu 24.04.1 LTS
  • CPU:Intel(R) Xeon(R) Gold 6326 CPU @ 2.90GHz
  • RAM:32G
  • SWAP:8G
  • 下载MairaDB:https://mariadb.org/download/ (不要选择 RC 版本!)

我这里选择下载的是 11.4.4 Linux x86_64 systemd 的压缩包,我下载完成以后文件名为 mariadb-11.4.4-linux-systemd-x86_64.tar.gz,后续需要更换为你自己的文件名。

解压安装

解压到 /usr/local 目录,当然你可以找个你习惯的地方,解压后进入目录

sudo tar -zxvf mariadb-11.4.4-linux-systemd-x86_64.tar.gz -C /usr/local
cd /usr/local/mariadb-11.4.4-linux-systemd-x86_64

查看安装说明文档

cat INSTALL-BINARY

这个文档中说明的很清楚了,我们跟着文档的指示进行执行即可,我下面也基本参考这个文档进行操作。

配置环境和安装

# 创建用户和组
groupadd mysql
useradd -g mysql mysql
# 注意这里的目录,我是解压到了 /usr/local,替换成你的目录
cd /usr/local
# 创建软连接,方便多版本转换,注意你自己的路径和文件夹名称
ln -s /usr/local/mariadb-11.4.4-linux-systemd-x86_64 /usr/local/mysql
# 进入软连接的目录,就是程序的主目录
cd mysql
# 修改所属权限
chown -R mysql .
chgrp -R mysql .

配置数据库/etc/my.cnf

在这里需要注意一下,不要着急往下配置,有些参数必须在数据库初始化安装前进行配置,所以不要着急,先停一下,把你需要配置的内容想好,写好/etc/my.cnf,下面我提供我的配置文件,虽然可能不适合你的环境,但你可以进行参考:

[mysqld]
lower_case_table_names=1
port=3306
innodb-page-size=65536
character-set-server=utf8mb4
## * Fine Tuning
max_connections = 300  ## 最大连接数
open_files_limit = 1048576  ## 打开文件数限制
## * Query Cache Configuration
query_cache_type = ON
query_cache_size = 32M
query_cache_limit = 1G
performance_schema = ON
table_open_cache = 3000
## * InnoDB
default-storage-engine = innodb
innodb_file_per_table = 1
innodb_buffer_pool_size = 26G  ## InnoDB存储引擎的缓冲区 70%
innodb_buffer_pool_instances = 1
innodb_flush_log_at_trx_commit = 0
innodb_log_file_size = 5G
innodb_log_buffer_size = 512M
innodb_read_io_threads=16
innodb_write_io_threads=16
key_buffer_size = 10M
skip-name-resolve
max_heap_table_size = 24G

初始化数据库

# 初始化数据库
scripts/mysql_install_db --user=mysql
# 修改目录权限
chown -R root .
chown -R mysql data
# 设置环境变量
vim /etc/profile
export PATH=$PATH:/usr/local/mysql/bin/
# 注册为服务
cp support-files/systemd/mariadb.service /usr/lib/systemd/system/mariadb.service
mkdir /etc/systemd/system/mariadb.service.d/
cat > /etc/systemd/system/mariadb.service.d/datadir.conf <<EOF
[Service]
ReadWritePaths=/usr/local/mysql/data
EOF
# 重新加载服务列表
systemctl daemon-reload
# 启动 mariadb 服务
systemctl start mariadb.service
# 查看 mariadb 服务状态
systemctl status mariadb.service
# 启用 mariadb 服务开机自启
systemctl enable mariadb.service

登录数据库测试

# 登录数据库
mysql -uroot
MariaDB [(none)]> use mysql;
# 设置密码
MariaDB [mysql]> SET password=PASSWORD('newpassward');
MariaDB [mysql]> FLUSH PRIVILEGES;
# 如果需要远程访问还需要下面的命令
MariaDB [mysql]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'newpassward';

到此为止,已经完成二进制(binary)MairaDB数据库的安装步骤。

商业用途请联系作者获得授权。
版权声明:本文为博主「任霏」原创文章,遵循 CC BY-NC-SA 4.0 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.renfei.net/posts/1626402130325676122
评论与留言

以下内容均由网友提交发布,版权与真实性无法查证,请自行辨别。

大神能教教这个blog怎么搭建吗。谢谢

任霏 站点官方 回复

我这个博客呀,是我自己写的代码,目前不开源哈,之前开源过,后来担心安全问题闭源了

微信搜一搜:任霏博客