5154

Good Luck To You!

centos创建数据库步骤是怎样的?新手入门指南

在CentOS系统中创建数据库是许多服务器管理和开发任务中的基础操作,不同类型的数据库系统(如MySQL、PostgreSQL、MariaDB等)在CentOS上的创建方法略有差异,但总体流程相似,本文将以最常用的MariaDB和PostgreSQL为例,详细介绍在CentOS上创建数据库的步骤、注意事项及相关配置,帮助读者顺利完成数据库的部署与初始化。

centos创建数据库步骤是怎样的?新手入门指南

准备工作:安装数据库管理系统

在创建数据库之前,首先需要确保系统已安装对应的数据库管理系统,以MariaDB为例,CentOS 7及以上版本默认使用MariaDB作为MySQL的替代品,可以通过以下命令安装MariaDB服务器:

sudo yum install mariadb-server mariadb

安装完成后,启动MariaDB服务并设置开机自启:

sudo systemctl start mariadb
sudo systemctl enable mariadb

对于PostgreSQL,安装命令如下:

sudo yum install postgresql-server postgresql

安装后需初始化数据库并启动服务:

sudo postgresql-setup --initdb
sudo systemctl start postgresql
sudo systemctl enable postgresql

配置数据库安全设置

首次安装数据库后,建议运行安全配置脚本以强化安全性,以MariaDB为例,执行:

sudo mysql_secure_installation

该脚本会引导用户设置root密码、移除匿名用户、禁止root远程登录等操作,PostgreSQL的安全配置则需要修改pg_hba.conf文件,设置客户端认证方式,

sudo vi /var/lib/pgsql/data/pg_hba.conf

ident认证修改为md5以支持密码验证,保存后重启PostgreSQL服务使配置生效。

创建数据库与用户

MariaDB创建数据库

登录MariaDB命令行:

centos创建数据库步骤是怎样的?新手入门指南

mysql -u root -p

输入root密码后,执行以下SQL语句创建数据库:

CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

接着创建一个具有权限的数据库用户:

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';

授予用户对数据库的完整权限:

GRANT ALL PRIVILEGES ON mydatabase.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;

PostgreSQL创建数据库

PostgreSQL默认使用postgres超级用户,可通过以下命令切换:

sudo -u postgres psql

在PostgreSQL命令行中创建数据库:

CREATE DATABASE mydatabase WITH ENCODING 'UTF8';

创建用户并授权:

CREATE USER myuser WITH PASSWORD 'mypassword';
GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser;

数据库字符集与排序规则设置

创建数据库时,字符集和排序规则的设置至关重要,尤其是处理多语言数据时,MariaDB推荐使用utf8mb4字符集,它支持完整的Unicode字符,包括emoji表情。

CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

PostgreSQL默认使用UTF8编码,创建时可通过WITH ENCODING 'UTF8'明确指定,确保与应用需求一致。

centos创建数据库步骤是怎样的?新手入门指南

验证数据库创建与权限

创建完成后,可通过以下命令验证数据库是否成功创建,在MariaDB中:

SHOW DATABASES;

在PostgreSQL中:

\l

切换到新数据库并测试用户权限:

USE mydatabase;  -- MariaDB
\c mydatabase    -- PostgreSQL

执行简单查询或表操作,确认用户权限是否正确配置。

常见问题与注意事项

  1. 权限不足:创建数据库时若提示权限错误,需确保当前用户具有CREATE权限(如root或postgres超级用户)。
  2. 字符集冲突:若应用与数据库字符集不匹配,可能导致乱码,建议统一使用UTF-8相关字符集。
  3. 防火墙设置:若需远程访问数据库,需开放对应端口(如MariaDB默认3306,PostgreSQL默认5432),并配置防火墙规则:
    sudo firewall-cmd --permanent --add-port=3306/tcp
    sudo firewall-cmd --reload

相关问答FAQs

Q1:如何在CentOS上删除已创建的数据库?
A1:登录数据库管理系统后,执行DROP DATABASE mydatabase;命令(MariaDB)或DROP DATABASE mydatabase;(PostgreSQL),注意:此操作不可逆,将删除数据库及所有数据。

Q2:如何修改数据库的字符集?
A2:若数据库已存在且无数据,可直接删除重建;若有数据,需导出数据、重建数据库并重新导入,在MariaDB中使用:

mysqldump -u root -p old_database > backup.sql
mysql -u root -p -e "CREATE DATABASE new_database CHARACTER SET utf8mb4;"
mysql -u root -p new_database < backup.sql

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年11月    »
12
3456789
10111213141516
17181920212223
24252627282930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.