CentOS 7 安装数据库详细步骤
在 CentOS 7 上安装数据库是一项常见的任务,本文将详细介绍如何在 CentOS 7 上安装 MySQL 和 PostgreSQL 两种流行的数据库系统,以下是详细的步骤和相关注意事项。
准备工作
无论是安装 MySQL 还是 PostgreSQL,首先需要确保系统是最新的,并且安装了必要的工具。
1、更新系统并安装基本工具:
sudo yum update -y sudo yum install -y wget yum-utils gcc make
安装 MySQL
下载 MySQL 源码包
假设我们要安装 MySQL 8.0.29,可以使用以下命令下载源码包:
wget https://cdn.mysql.com/Downloads/MySQL-8.0/mysql-8.0.29.tar.gz tar -xzvf mysql-8.0.29.tar.gz cd mysql-8.0.29
配置编译参数
在编译 MySQL 之前,需要配置编译参数:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8mb4 -DDEFAULT_COLLATION=utf8mb4_unicode_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DWITH_DEBUG=0 -DENABLED_LOCAL_INFILE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DWITH_PLUGIN_DIR="/usr/local/mysql/lib/plugin" .
编译和安装
配置完成后,开始编译和安装:
make -j $(nproc) sudo make install
配置 MySQL
创建 MySQL 用户和组:
sudo groupadd mysql sudo useradd -r -g mysql mysql
初始化数据库:
sudo chown -R mysql:mysql /usr/local/mysql sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql
启动 MySQL 服务:
sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &
为了确保 MySQL 服务在系统启动时自动启动,创建一个 systemd 服务文件:
sudo cat > /etc/systemd/system/mysqld.service <<EOF [Unit] Description=MySQL Server After=network.target [Service] User=mysql Group=mysql ExecStart=/usr/local/mysql/bin/mysqld_safe Restart=always RestartSec=10 [Install] WantedBy=multi-user.target EOF
然后启用并启动 MySQL 服务:
sudo systemctl enable mysqld sudo systemctl start mysqld
登录 MySQL 并设置 root 密码
登录 MySQL 服务器并设置 root 密码:
sudo /usr/local/mysql/bin/mysql -u root
设置 root 密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password'; FLUSH PRIVILEGES; EXIT;
安装 PostgreSQL
添加 PostgreSQL 仓库并安装
执行以下命令导入 PostgreSQL 官方软件源,并安装 PostgreSQL:
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm sudo yum install -y postgresql14-server
初始化实例并设置自启动服务
初始化 PostgreSQL 实例:
/usr/pgsql-14/bin/postgresql-14-setup initdb
设置 PostgreSQL 服务为开机自启动:
sudo systemctl enable postgresql-14
启动 PostgreSQL 服务:
sudo systemctl start postgresql-14
修改 PostgreSQL 超级用户密码
切换至postgres
用户下,执行 psql 进入 PostgreSQL 数据库:
su postgres psql
修改超级用户密码:
ALTER USER postgres WITH PASSWORD 'postgres';
验证其他用户登录,如使用 root 用户登录:
--h:指定主机地址 --p:端口号 --U:登陆用户 c /host=127.0.0.1 port=5432 user=postgres password=postgres
如果连接成功,显示版本号即表示安装成功。
通过上述步骤,我们成功地在 CentOS 7 中安装了 MySQL 和 PostgreSQL 数据库,这两种方法各有优劣:
1、灵活性:编译源码安装可以根据需求选择不同的编译选项,获得更符合需求的功能和性能,而 RPM 包安装则较为简单快捷。
2、兼容性:编译源码时可以确保数据库与现有系统环境的兼容性。
3、复杂性:编译源码安装相对复杂,需要更多的时间和专业知识,RPM 包安装则更为简便,适合大多数普通用户。
4、维护:使用 RPM 包安装的数据库更容易维护和更新,通过包管理器即可轻松升级,而编译源码安装则需要手动处理更新和维护。
5、社区支持:RPM 包安装通常会有更好的社区支持,包括文档和问题解决,编译源码安装可能需要自行查找和解决遇到的问题。
FAQs
1、如何更改 MySQL 的 root 密码?:登录 MySQL 后执行以下命令:ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; FLUSH PRIVILEGES;
。
2、如何远程访问 PostgreSQL?:修改pg_hba.conf
文件中的相关配置,将localhost
改为,并重启 PostgreSQL 服务,同时确保防火墙允许相应的端口(默认5432)通信。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1413078.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复