如何在centos虚拟机中安装数据库
导读:一、安装前准备 系统更新:确保CentOS虚拟机系统为最新版本,避免依赖冲突。 执行命令:sudo yum update -y 安装必要工具:安装wget(用于下载仓库文件)、vim(可选,用于编辑配置文件)。 执行命令:sudo yum...
一、安装前准备
- 系统更新:确保CentOS虚拟机系统为最新版本,避免依赖冲突。
执行命令:sudo yum update -y
- 安装必要工具:安装
wget
(用于下载仓库文件)、vim
(可选,用于编辑配置文件)。
执行命令:sudo yum install -y wget vim
- 清理旧残留(可选):若虚拟机曾安装过MySQL/MariaDB,需先卸载残留包,避免冲突。
执行命令:sudo yum remove mysql mysql-server mariadb mariadb-server -y
二、安装MySQL数据库(以MySQL 5.7为例)
1. 添加MySQL官方YUM仓库
- 下载MySQL 5.7的YUM源包:
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
- 安装YUM源:
sudo rpm -ivh mysql57-community-release-el7-11.noarch.rpm
(注:若需安装MySQL 8.0,可将上述URL中的57
替换为80
)
2. 安装MySQL服务器
执行命令:sudo yum install -y mysql-community-server
(系统会自动下载并安装MySQL服务器及依赖包)
3. 启动MySQL服务并设置开机自启
- 启动服务:
sudo systemctl start mysqld
- 设置开机自启:
sudo systemctl enable mysqld
- 验证服务状态:
sudo systemctl status mysqld
(显示“active (running)”即为成功)
4. 获取临时root密码并登录
- 查看临时密码:
sudo grep 'temporary password' /var/log/mysqld.log
(日志中“root@localhost:”后的字符串即为初始密码) - 登录MySQL:
mysql -u root -p
(粘贴临时密码,输入时不显示)
5. 配置MySQL安全设置
执行安全脚本:sudo mysql_secure_installation
按提示完成以下操作:
- 输入临时密码;
- 设置新root密码(建议包含字母+数字,长度≥8位);
- 删除匿名用户;
- 禁止root远程登录(生产环境建议开启);
- 删除测试数据库;
- 重新加载权限表。
6. 创建数据库和用户(可选)
- 创建数据库:
CREATE DATABASE testdb;
- 创建用户并授权:
(若需允许远程访问,将CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'password123'; GRANT ALL PRIVILEGES ON testdb.* TO 'testuser'@'localhost'; FLUSH PRIVILEGES;
'localhost'
改为'%'
,并执行GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; FLUSH PRIVILEGES;
)
三、安装PostgreSQL数据库(以PostgreSQL 14为例)
1. 添加PostgreSQL官方YUM仓库
执行命令:sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
(该命令会添加PostgreSQL的官方软件源,支持多版本安装)
2. 安装PostgreSQL服务器
执行命令:sudo yum install -y postgresql14-server
(系统会自动安装PostgreSQL服务器及依赖包)
3. 初始化数据库集群
执行命令:sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
(该命令会创建PostgreSQL的数据目录,默认路径为/var/lib/pgsql/14/data
)
4. 启动PostgreSQL服务并设置开机自启
- 启动服务:
sudo systemctl start postgresql-14
- 设置开机自启:
sudo systemctl enable postgresql-14
- 验证服务状态:
sudo systemctl status postgresql-14
(显示“active (running)”即为成功)
5. 切换至postgres用户并登录
- 切换用户:
su - postgres
- 登录PostgreSQL:
psql
(默认无需密码,直接进入PostgreSQL命令行界面)
6. 配置PostgreSQL(允许远程访问,可选)
- 修改
pg_hba.conf
文件(允许所有IP访问):
vim /var/lib/pgsql/14/data/pg_hba.conf
在文件末尾添加:host all all 0.0.0.0/0 md5
- 修改
postgresql.conf
文件(开启远程监听):
vim /var/lib/pgsql/14/data/postgresql.conf
找到listen_addresses
行,修改为:listen_addresses = '*'
- 重启服务使配置生效:
sudo systemctl restart postgresql-14
7. 创建数据库和用户(可选)
- 创建linux用户(可选):
sudo useradd kong
- 切换至postgres用户:
su - postgres
- 登录PostgreSQL:
psql
- 创建数据库和用户:
CREATE USER kong WITH PASSWORD 'kong'; CREATE DATABASE kong OWNER kong; GRANT ALL PRIVILEGES ON DATABASE kong TO kong;
- 退出:
\q
,再退出linux用户:exit
四、常见问题排查
- MySQL无法启动:
- 查看日志:
sudo tail -n 50 /var/log/mysqld.log
,根据错误信息解决(如端口冲突、磁盘空间不足)。
- 查看日志:
- PostgreSQL无法启动:
- 检查数据目录权限:
chown -R postgres:postgres /var/lib/pgsql/14/data
。 - 删除
postmaster.pid
文件(若存在):sudo rm -f /var/lib/pgsql/14/data/postmaster.pid
,再重启服务。
- 检查数据目录权限:
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 如何在centos虚拟机中安装数据库
本文地址: https://pptw.com/jishu/723597.html