数据库初识与安装
一、数据库基础认知
Linux 是服务器端最主流的操作系统,绝大多数企业的数据库服务都部署在 Linux 上。相比 Windows,Linux 下安装 MySQL 更简洁(通过包管理器),且运行更稳定、资源占用更低。
新手仍首选MySQL(开源免费、生态完善),以下以最常用的 CentOS 7/8和 Ubuntu 20.04/22.04
二、MySQL 安装步骤
2.1 环境准
-
登录 Linux 服务器(建议用 root 用户,或普通用户加
sudo),先更新系统包:- CentOS/RHEL
bash
运行
yum update -y - Ubuntu/Debian:
bash
运行
apt update && apt upgrade -y
- CentOS/RHEL
-
关闭防火墙 / SELinux
bash
运行
# CentOS 7 关闭防火墙 systemctl stop firewalld systemctl disable firewalld # 关闭SELinux setenforce 0 sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
2.2 CentOS 7/8 安装 MySQL
bash
运行
# CentOS 7
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
# CentOS 8(需先禁用默认MySQL模块)
dnf module disable mysql -y
wget https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm
rpm -ivh mysql80-community-release-el8-3.noarch.rpm
安装 MySQL 服务
bash
运行
# CentOS 7
yum install -y mysql-community-server
# CentOS 8
dnf install -y mysql-community-server
启动并设置开机自启
bash
运行
# 启动服务
systemctl start mysqld
# 设置开机自启
systemctl enable mysqld
# 查看服务状态(确认running)
systemctl status mysqld
获取临时密码并修改
-
MySQL 安装后会自动生成临时密码,存放在日志文件中:
bash
运行
grep 'temporary password' /var/log/mysqld.log输出示例:
A temporary password is generated for root@localhost: abc123*XYZ(复制这个密码)。 -
登录 MySQL 并修改密码:
bash
运行
# 登录(输入上述临时密码) mysql -u root -p登录后执行密码修改语句
sql
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPasswd@123'; # 刷新权限 FLUSH PRIVILEGES; # 退出 exit;
2.3 Ubuntu 20.04/22.04 安装 MySQL
安装 MySQL 服务
bash
运行
# 直接安装
apt install -y mysql-server
初始化配置(设置密码)
bash
运行
mysql_secure_installation
bash
运行
mysql -u root -p
输入设置的密码,进入mysql>命令行即安装成功。
2.4 允许远程访问
默认 MySQL 只允许本地(localhost)访问,如需远程连接(如用 Navicat),需修改配置:
-
登录 MySQL,执行授权语句
sql
-- MySQL8.0 授权语法 CREATE USER 'root'@'%' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; exit; -
修改 MySQL 配置文件,注释绑定 IP 的行:
bash
运行
# 编辑配置文件 vi /etc/my.cnf # CentOS # 或 vi /etc/mysql/mysql.conf.d/mysqld.cnf # Ubuntu找到
bind-address = 127.0.0.1,改为bind-address = 0.0.0.0(或注释掉这行),保存退出。 -
重启 MySQL 服务:
bash
运行
# CentOS systemctl restart mysqld # Ubuntu systemctl restart mysql
三、Linux 下 MySQL 基础操作
3.1 核心系统命令
bash
运行
# 启动/停止/重启服务
systemctl start mysqld # CentOS
systemctl start mysql # Ubuntu
systemctl stop mysqld
systemctl restart mysqld
# 查看服务状态
systemctl status mysqld
# 查看MySQL版本
mysql -V
# 查看监听端口(确认3306端口开启)
netstat -tnlp | grep 3306
3.2 核心 SQL 命令(与 Windows 一致)
sql
-- 查看所有数据库
SHOW DATABASES;
-- 创建数据库
CREATE DATABASE test_db;
-- 使用数据库
USE test_db;
-- 创建表
CREATE TABLE user (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
age INT
);
-- 插入数据
INSERT INTO user (name, age) VALUES ('李四', 25);
-- 查询数据
SELECT * FROM user;
四、常见问题解决
- 安装提示依赖错误:CentOS 执行
yum install -y libaio-devel,Ubuntu 执行apt install -y libaio1。 - 3306 端口无法访问:检查防火墙是否放行 3306 端口(生产环境建议配置:
firewall-cmd --add-port=3306/tcp --permanent && firewall-cmd --reload)。 - 远程连接失败:确认
bind-address已改为 0.0.0.0、授权语句正确、服务器安全组放行 3306 端口。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)