返回

Mysql使用

mysql安装

MySQL 采用客户端 - 服务器(C/S)架构,包含两个核心组件:

  • 服务端 MySQL Server:管理数据库文件、处理连接请求、返回结果和数据存储
  • 客户端 MySQL Client:发送请求、通过客户端程序(如命令行工具)连接到服务器

安装的 MySQL 软件本质上是服务器端(即 mysql-server),负责管理数据库、处理请求和存储数据。而客户端(常见的是命令行客户端)是用于连接并与 MySQL 服务器交互的工具或程序。

image-20250702104035725

mysql启动

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
sudo systemctl status mysql      查看mysql运行状态,应该是active (running) 

sudo apt install mysql-server     安装mysql
sudo apt-get install mysql-server

sudo systemctl enable mysql        启用 MySQL 开机自启
sudo systemctl is-enabled mysql    验证是否已成功设置

sudo systemctl start mysql         手动启动mysql(安装后会自动启用)
sudo systemctl stop mysql          停止mysql
sudo systemctl restart mysql       重启mysql

在Windows系统上启用mysql:(方法一)

  • windows+r快捷键,打开运行窗口
  • 输入services.msc,查看本地服务(不是输入cmd)
  • 找到MySQL服务,右键选择启动
  • 停止服务,选择停止

在Windows系统上启用mysql:(方法二)

  • 按下 Win + R,输入 cmd
  • net start mysql 启动mysql
  • net stop mysql 停止mysql
  • sc query mysql 验证是否停止

mysql登录

账户管理

在Ubuntu中下载好mysql后,会默认创建两个账户:

1、超级用户 root 这是MySQL的超级用户,拥有所有数据库的完全控制权限(安装过程中会提示设置root用户的密码)

2、debian-sys-maint用户 这是一个由Debian/Ubuntu系统包管理维护的专用账户,用户名为debian-sys-maint。其密码存储在 /etc/mysql/debian.cnf 配置文件中(明文保存,需注意权限为root可读)。这样做是为了避免直接使用root账户 注:查看此账户明文密码:sudo vim /etc/mysql/debian.cnfsudo cat /etc/mysql/debian.cnf

3、其他创建的新用户 如果不想使用root超级账户,debian-sys-maint账户又太复杂记不住,可以进入root账户创建新用户并设置密码。

1
2
3
4
5
6
7
8
# 创建新用户:xxcjw   123456
CREATE USER 'xxcjw'@'localhost' IDENTIFIED BY '123456';

# 使用root账户赋予xxcjw任意权限
# WITH GRANT OPTION:允许用户将自己拥有的权限转授给其他用户(需谨慎,一般不赋予)
GRANT ALL PRIVILEGES ON *.* TO 'xxcjw'@'localhost';
GRANT ALL PRIVILEGES ON *.* TO 'xxcjw'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;    # 重新加载权限表的sql命令

我的账户

需要说明的是:我把mysql/debian.cnf文件中的debian-sys-maint账户改为了我自己的账户和密码。

账户 密码
root 123456
debian-sys-maint hlpsoKws3nanLOgf
xxcjw 123456

登录使用

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
# 登录数据库,-p表示需输入密码
sudo mysql -u root -p
sudo mysql -u xxcjw -p

# 创建空数据库
create database database_name;

# 切换为这个数据库
use database_name;

# 导入数据、查看数据库表
source xxx.sql;   # 导入sql语句到当前数据库database_name
show tables;

删除mysql

在Mysql中,对Linux(Ubuntu 等常见发行版)而言,创建的各种数据库默认存储路径一般是 /var/lib/mysql/ 目录下,通常需要 root 权限才能访问该目录。而数据库的各种配置文件则一般在 /etc/mysql/ 目录,可以在这里找存储位置。

如果在安装过程中遇到各种问题,安装了很多其他东西还没解决,想卸载重新安装:

1
2
3
4
5
6
7
8
9
# 卸载mysql软件包和配置、删除残留文件、清理依赖项
sudo apt purge mysql-*
sudo rm -rf /etc/mysql/ /var/lib/mysql /var/log/mysql
sudo apt autoremove
sudo apt autoclean

# 然后再重新安装
sudo apt-get update
sudo apt-get install mysql-server

注意

  • 我在Ubuntu上安装好mysql后,查看mysql状态一直是start而不是runing,询问gpt可能是端口被占用,最终找到原因是本地Windows系统mysql设置的开机自启,导致端口被占用。(通过查看mysql日志找到端口被占用这个错误)
光终究会洒在你的身上,你也会灿烂一场!
本博客已稳定运行