搭建mysql-5.7.25

本文详述了在Linux环境下部署MySQL5.7数据库的全过程,包括创建用户、目录,下载并安装MySQL,配置参数文件,初始化及启动MySQL服务等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建用户:

groupadd mysql
useradd -m -g mysql mysql

创建目录:

cd /
mkdir -p /data/mysql/mysql3306
cd /data
chown -R mysql:mysql mysql

下载并安装mysql:

mkdir apps
cd /apps
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
tar xzvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql-5.7.25
chown -R mysql:mysql mysql-5.7.25
ln -s /apps/mysql5.7.10 mysql

配置文件mysql3306.cnf:

root@NFJD-MMPT-WAPMH-ZX03 local]# vi /data/mysql/mysql3306.cnf
[mysql]
port            = 3306
socket          = /tmp/mysql_3306.sock
default-character-set=utf8

[mysqld]
user=mysql
server-id = 13783306
datadir=/data/mysql/mysql3306
port            = 3306
socket         = /tmp/mysql_3306.sock
skip-name-resolve
default_storage_engine=InnoDB
#federated

#skip-character-set-client-handshake
character_set_server=utf8
collation_server=utf8_unicode_ci
explicit_defaults_for_timestamp=true
transaction_isolation = REPEATABLE-READ

back_log = 150
max_connections = 3000
max_connect_errors = 10

max_allowed_packet = 16M
binlog_cache_size = 1M
max_heap_table_size = 64M
table_open_cache = 2048
thread_cache_size = 8
query_cache_size = 256M
query_cache_limit = 2M
sort_buffer_size = 8M
join_buffer_size = 8M
key_buffer_size = 32M
read_buffer_size = 2M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 64M
thread_stack = 192K
tmp_table_size = 64M

log-bin=mysql-bin
relay_log=mysql-relay-bin
binlog_format=row
log_slave_updates=1
slow_query_log=1
long_query_time = 1
log_bin_trust_function_creators=1

#myisam
myisam_sort_buffer_size = 16M
myisam_max_sort_file_size = 16M
myisam_repair_threads = 1

innodb_file_per_table=1
innodb_file_format=barracuda
innodb_strict_mode=1
innodb_buffer_pool_size = 1G
innodb_data_file_path = ibdata1:12M:autoextend
innodb_log_buffer_size = 8M
innodb_log_file_size = 64M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_flush_method=O_DIRECT
innodb_lock_wait_timeout = 2
innodb_print_all_deadlocks = 1

sync_binlog = 1
innodb_flush_log_at_trx_commit = 1
sync_relay_log = 1
sync_master_info = 1
sync_relay_log_info = 1
master-info-repository  = TABLE
relay-log-info-repository = TABLE

###auto_increment#####
#auto_increment_increment=2
#auto_increment_offset=2

###gtid_mode#######
#gtid-mode=on     
#enforce-gtid-consistency=true

###rpl_semi_sync#######
#rpl_semi_sync_master_enabled=1
#rpl_semi_sync_master_timeout=1000
#rpl_semi_sync_master_trace_level=32
#rpl_semi_sync_master_wait_no_slave=on

[mysqld_safe]
open-files-limit = 8192

初始化密码:

./bin/mysqld --initialize --user=mysql --basedir=/apps/mysql-5.7.25 --datadir=/data/mysql/mysql3306

启动mysql:

./bin/mysqld_safe --defaults-file=/data/mysql/mysql3306.cnf &

登陆mysql:

/apps/mysql-5.7.25/bin/mysql -uroot -p --socket=/tmp/mysql_3306.sock

修改密码:

SET PASSWORD FOR ‘root’@‘localhost’ = PASSWORD(‘123’);

### 使用 Docker Compose 部署 MySQL 5.7.25 为了部署特定版本的 MySQL (例如 5.7.25),可以通过编写 `docker-compose.yml` 文件来指定所需的镜像及其配置。下面展示了如何创建和设置该文件以实现目标。 #### 创建工作目录与配置文件 选择一个合适的路径用于存放必要的文件及数据库持久化数据: ```bash cd /home mkdir mysql && cd mysql vi docker-compose.yml ``` 在此过程中,确保所选位置有足够的空间存储日志、配置以及其他相关资料[^1]。 #### 编写 `docker-compose.yml` 编辑 `docker-compose.yml` 文件如下所示,特别注意 `image:` 行指定了具体的 MySQL 版本号: ```yaml version: '3' services: db: image: mysql:5.7.25 container_name: mysql_5_7_25 environment: MYSQL_ROOT_PASSWORD: example_password ports: - ./conf.d:/etc/mysql/conf.d restart: always ``` 这段 YAML 文档定义了一个名为 `db` 的服务实例,它基于官方提供的 MySQL 5.7.25 镜像构建,并设置了环境变量以便初始化 root 用户密码;通过端口映射使得外部能够访问内部运行的服务;利用卷挂载机制实现了主机文件系统的部分区域同容器内相应位置之间的双向同步,从而保障了即使容器被销毁重建也不会丢失重要信息。 #### 启动服务 保存并关闭编辑器之后,在终端输入以下指令即可启动新搭建好的 MySQL 实例: ```bash docker-compose up -d ``` 此命令会依据先前编写的组合描述文档自动拉取所需资源(如果尚未存在的话),接着按照既定计划完成整个过程——包括但不限于网络规划、依赖关系处理等等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值