CentOS 7 环境下MySQL 5.7数据库
安装指南
安装MySQL数据库目的为保证项目应用运行正常,需要安装相应的数据库, 这里数据库采用的是MySQL, 版本5.7
在服务器完成操作系统升级之后, 进行此项操作。
安装指南添加yum源导入MySql GPG key:
# sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022命令:
#sudo yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm在命令的最后,选择同意(y)
安装MySQL 5.7执行:
sudo yum -y install mysql-community-server结果:
启动并配置MySQL自动启动启动MySQL 服务器:
sudo systemctl start mysqld配置开机自动启动MySQL 服务:
sudo systemctl enable mysqld当MySQL 成功启动后, 会启用3306端口, 运行以下命令以确认:
netstat -plntu确认3306端口已经启用, 如下图所示:
确认MySQL 服务已经随操作系统启动:
sudo systemctl is-enabled mysqld配置MySQL账户和密码在CentOS7 上, MySQL 会自动生成一个默认的密码,并记录在mysqld.log文件中, 使用如下命令来获取该密码, 并记录!
grep 'temporary' /var/log/mysqld.log结果如下:
请将该密码从命令行复制,并粘贴于此:
日期
默认MySQL 密码
描述
执行人
2022/09/16
p7l.0O3eg#pT
MySQL 默认root 密码
并且, 在命令行中执行如下命令,以保存原始密码
mkdir ~/mysql && cd ~/mysqlvi mysql_root_default.txt在命令行中按i键, 然后把默认密码粘贴,随后按:wq键, 保存退出。
随后,用密码登陆:
mysql -u root -p然后, 执行如下命令, 把密码改为@Qi-TYgv7LoDbFA8L-qpb*KJ
ALTER USER 'root'@'localhost' IDENTIFIED BY '@Qi-TYgv7LoDbFA8L-qpb*KJ';flush privileges;注意: 此处密码也可以从如下网址生成:
https://www.lastpass.com/features/password-generator结果:
输入quit 结束当前MySQL 交互。
密码记录:
日期
默认MySQL 密码
最新密码
执行人
2022/09/16
@Qi-TYgv7LoDbFA8L-qpb*KJ
陈郑伟
更改后的MySQL 密码验证使用如下命令登陆:
mysql -u root -p在正确输入密码之后,确保可以登陆:
设置MySQL UTF8 编码查询编码:
show variables like 'character_set%';结果如下:
下面是正确显示UTF8编码的/etc/my.cnf,供参考:
# For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html[client]default-character-set=utf8#character_set_client=utf8#character_set_connection=utf8#character_set_results=utf8[mysqld]## Remove leading # and set to the amount of RAM for the most important data# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.innodb_buffer_pool_size = 1024M## Remove leading # to turn on a very important data integrity option: logging# changes to the binary log between backups.# log_bin## Remove leading # to set options mainly useful for reporting servers.# The server defaults are faster for transactions and fast SELECTs.# Adjust sizes as needed, experiment to find the optimal values.# join_buffer_size = 128M# sort_buffer_size = 2M# read_rnd_buffer_size = 2Mdatadir=/var/lib/mysqlsocket=/var/lib/mysql/mysql.sock# Disabling symbolic-links is recommended to prevent assorted security riskssymbolic-links=0log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pidcharacter_set_server=utf8创建数据库执行如下命令以创建数据库,此处根据实际需要替换数据库名称,数据库名称为大写字母:
CREATE DATABASE HEATINGLOA CHARACTER SET utf8 COLLATE utf8_general_ci;确认数据库已经创建:
SHOW DATABASES;结果确认:
创建用户:
create user mercenary@localhost identified by 'Flxi@85721';授权:
grant all privileges on HEATINGLOAD_TWO.* to mercenary@"%" identified by 'Flxi@85721';flush privileges;结果:
随后,键入quit 退出当前MySQL 交互窗口。
验证数据库访问运行如下命令,并输入密码Flxi@8571:
mysql -u mercenary -p结果应该可以正确登陆, 同时可以输入 show databases; 查看数据库:
输入quit, 退出当前MySQL交互窗口。
日期
数据库名称
数据库用户
用户密码
2022/09/16
HEATINGLOAD_TWO
mercenary
Flxi@8571
初始化数据库HEATINGLOAD_TWO导入数据库文件把数据库倒出为sql 文件。
通过source 导入这个sql 文件。
对于数据文件比较大的情况,为了加快速度,可以使用如下方法:
设置参数sql_log_bin: 关闭二进制日志autocommit: 关闭事务自动提交set sql_log_bin=off;set autocommit=0;使用数据库use HEATINGLOAD_TWO;开启事务start transaction;导入sqlsource /data/initdb/<filename>.sql;手动提交事务commit;改回配置set sql_log_bin=on;set autocommit=1;数据库安装和数据初始化确认日期
描述
执行人
客户方签字
2022/09/18
确认该台服务器操作系统加固建议操作已完成