在CentOS系统中,SQL操作命令是数据库管理的重要工具,无论是MySQL、MariaDB还是PostgreSQL,掌握基础命令都能高效完成数据管理任务,本文将详细介绍CentOS环境下SQL操作的核心命令,涵盖安装、连接、数据操作、权限管理等关键环节,帮助用户系统化掌握数据库操作技能。

数据库安装与初始化
在CentOS中,首先需要安装数据库服务,以MariaDB为例,使用以下命令安装:
sudo yum install mariadb-server mariadb sudo systemctl start mariadb sudo systemctl enable mariadb
安装完成后,运行安全脚本初始化配置:
sudo mysql_secure_installation
根据提示设置root密码、移除匿名用户、禁止root远程登录等操作,确保数据库安全,PostgreSQL用户可通过sudo yum install postgresql-server postgresql安装,并执行postgresql-setup initdb初始化数据库。
连接与退出数据库
安装完成后,需连接数据库进行操作,MySQL/MariaDB使用以下命令:
mysql -u root -p
输入密码后进入命令行界面,PostgreSQL则需切换至postgres用户:
sudo -u postgres psql
退出数据库使用exit或quit命令,PostgreSQL用户可输入\q。
数据库与表的基本操作
数据库管理
创建数据库:
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
删除数据库:
DROP DATABASE mydb;
查看所有数据库:

SHOW DATABASES;
表操作
选择数据库后,可创建表:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
查看表结构:
DESCRIBE users;
删除表:
DROP TABLE users;
数据增删改查操作
插入数据
INSERT INTO users (username, email) VALUES ('john_doe', 'john@example.com');
批量插入:
INSERT INTO users (username, email) VALUES
('jane_doe', 'jane@example.com'),
('bob_smith', 'bob@example.com');
查询数据
查询所有数据:
SELECT * FROM users;
条件查询:
SELECT * FROM users WHERE username = 'john_doe';
排序与限制:
SELECT * FROM users ORDER BY created_at DESC LIMIT 10;
更新数据
UPDATE users SET email = 'new_email@example.com' WHERE id = 1;
删除数据
DELETE FROM users WHERE id = 1;
用户与权限管理
创建用户
MySQL/MariaDB:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
PostgreSQL:

CREATE USER newuser WITH PASSWORD 'password';
授权
GRANT ALL PRIVILEGES ON mydb.* TO 'newuser'@'localhost'; FLUSH PRIVILEGES; -- MySQL/MariaDB需执行此命令
PostgreSQL授权:
GRANT ALL PRIVILEGES ON DATABASE mydb TO newuser;
撤销权限
REVOKE ALL PRIVILEGES ON mydb.* FROM 'newuser'@'localhost';
数据备份与恢复
备份数据库
MySQL/MariaDB:
mysqldump -u root -p mydb > backup.sql
PostgreSQL:
pg_dump -U postgres mydb > backup.sql
恢复数据库
MySQL/MariaDB:
mysql -u root -p mydb < backup.sql
PostgreSQL:
psql -U postgres mydb < backup.sql
常用维护命令
- 查看当前数据库版本:
SELECT VERSION(); -- MySQL/MariaDB SELECT version(); -- PostgreSQL
- 查看当前用户:
SELECT USER(); -- MySQL/MariaDB SELECT current_user; -- PostgreSQL
- 优化表:
OPTIMIZE TABLE users; -- MySQL/MariaDB
FAQs
问题1:如何忘记MySQL root密码?
解答:可通过以下步骤重置密码:
- 停止MySQL服务:
sudo systemctl stop mariadb - 跳过权限表启动:
sudo mysqld_safe --skip-grant-tables & - 无密码登录:
mysql -u root - 更新密码:
UPDATE mysql.user SET authentication_string=PASSWORD('newpassword') WHERE User='root'; FLUSH PRIVILEGES; - 重启MySQL服务:
sudo systemctl restart mariadb
问题2:PostgreSQL如何修改用户密码?
解答:使用以下命令修改:
ALTER USER postgres WITH PASSWORD 'newpassword';
或通过外部命令:
sudo -u postgres psql -c "ALTER USER postgres WITH PASSWORD 'newpassword';"