摘要:为保证项目应用运行正常,需要安装相应的数据库, 这里数据库采用的是MySQL, 版本8.0,操作系统为Rocky Linux 9.2
为保证项目应用运行正常,需要安装相应的数据库, 这里数据库采用的是MySQL, 版本8.0,操作系统为Rocky Linux 9.2
在服务器完成操作系统升级之后, 进行此项操作。
在CentOS 9 /Rocky 9 上,执行:
sudo dnf install mysql-server结果:
这样,mysql 就安装在您的服务器上了,但它还不能运行。
sudo systemctl start mysqld.servicesudo systemctl enable mysqld验证安装成功:
sudo rpm -qi mysql-server执行结果:
刚刚安装的软件包将 MySQL 配置为作为名为 mysqld.service 的 systemd 服务运行。为了使用 MySQL,需要使用 systemctl 命令启动它:
启动MySQL 服务器:
sudo systemctl start mysqld结果:
正式启用:
配置开机自动启动MySQL 服务:
sudo systemctl enable mysqldsudo systemctl status mysqld.service执行结果:
当MySQL 成功启动后, 会启用3306端口, 运行以下命令以确认:
sudo netstat -plntu确认3306端口已经启用, 如下图所示:
确认MySQL 服务已经随操作系统启动:
sudo systemctl is-enabled mysqldMySQL 现已在服务器上安装、运行和启用。
接下来,将介绍如何使用 MySQL 实例预装的 shell 脚本来加强数据库的安全性。
MySQL8.0 包含一个安全脚本,允许更改一些默认配置选项以提高 MySQL 的安全性。
要使用安全脚本,运行以下命令:
sudo mysql_secure_installation这将引导完成一系列提示,询问是否要对 MySQL 安装的安全选项进行某些更改。第一个提示将询问是否要设置验证密码插件,这里使用该插件来测试 MySQL 密码的强度。
下面选择设置验证密码插件,脚本将要求您选择密码验证级别。最强级别(输入 2 即可)将要求密码长度至少为 8 个字符,并包含大写字母、小写字母、数字和特殊字符:
这其中需要输入root 密码, 为了加强root 密码的强度,这里选择使用lastpass的密码生成器(https://www.lastpass.com/features/password-generator).
这里同时选择禁用root 远程登录、删除test数据库等选项。
最终的结果如下:
请将该密码从命令行复制,并粘贴于此:
并且, 在命令行中执行如下命令,以保存原始密码
mkdir ~/mysql && cd ~/mysqlvi mysql_init_root.txt在命令行中按i键, 然后把默认密码粘贴,随后按:wq键, 保存退出。
下面,可以通过连接 mysqladmin 工具(一个允许您运行管理命令的客户端)来验证MySQL安装并获取有关它的信息。使用以下命令以 root 身份(-u root)连接到 MySQL,提示输入密码(-p),并返回安装的版本:
mysqladmin -u root -p version执行结果:
这表明Mysql安装成功。
如果想连接到 MySQL 并开始向其中添加数据,请运行以下命令:
mysql -u root -p然后, 执行如下命令, 把密码改为生成的root 密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '';flush privileges;结果:
输入quit 结束当前MySQL 交互。
密码记录:
在正确输入密码之后,确保可以登陆:
执行如下命令以创建数据库:
CREATE DATABASE shopping CHARACTER SET utf8 COLLATE utf8_general_ci;确认数据库已经创建:
SHOW DATABASES;结果确认:
创建用户:
create user mercenary@'%' identified by '';授权:
GRANT ALL PRIVILEGES ON shopping.* TO 'mercenary'@'%';flush privileges;结果:
随后,键入quit 退出当前MySQL 交互窗口。
mysql -u mercenary -p结果应该可以正确登陆, 同时可以输入 show databases; 查看数据库:
输入quit, 退出当前MySQL交互窗口。
把数据库倒出为sql 文件。
通过source 导入这个sql 文件。
sql_log_bin: 关闭二进制日志autocommit: 关闭事务自动提交set sql_log_bin=off;set autocommit=0;来源:福德宫哼哼