访问前的准备工作
- 确保 MySQL 服务已运行
sudo systemctl status mysql # 检查服务状态 sudo systemctl start mysql # 若未运行则启动服务
- 获取有效账户信息
- 需准备 MySQL 用户名和密码(默认管理员账户为
root
)。 - 新安装的 MySQL 可通过临时密码登录(路径:
/var/log/mysqld.log
或sudo grep 'temporary password' /var/log/mysqld.log
)。
- 需准备 MySQL 用户名和密码(默认管理员账户为
通过命令行访问(最常用)
使用 mysql
客户端工具
mysql -u 用户名 -p
- 输入命令后按提示输入密码。
- 示例:
mysql -u root -p
→ 输入密码进入交互界面。
执行 SQL 操作
SHOW DATABASES; -- 查看所有数据库 USE 数据库名; -- 选择数据库 SELECT * FROM 表名; -- 查询数据 EXIT; -- 退出
直接执行单条命令(适合脚本)
mysql -u root -p密码 -e "SHOW DATABASES;" # 注意密码与-p之间无空格
通过图形化工具访问
phpMyAdmin(Web 端)
- 安装步骤:
sudo apt install phpmyadmin # Debian/Ubuntu sudo dnf install phpmyadmin # CentOS/RHEL
- 访问:
http://服务器IP/phpmyadmin
,用 MySQL 账户登录。
MySQL Workbench(桌面端)
- 从 MySQL 官网 下载安装包。
- 启动后点击 “+” 新建连接,输入主机 IP、端口(默认 3306)、用户名和密码。
编程语言连接示例
Python(使用 pymysql
库)
import pymysql conn = pymysql.connect( host='localhost', user='root', password='your_password', database='test_db' ) # 执行查询 cursor = conn.cursor() cursor.execute("SELECT VERSION()") print(cursor.fetchone()) # 输出 MySQL 版本 conn.close()
PHP(使用 PDO 扩展)
<?php $dsn = 'mysql:host=localhost;dbname=test_db;charset=utf8'; $user = 'root'; $pass = 'your_password'; try { $pdo = new PDO($dsn, $user, $pass); echo "连接成功!"; } catch (PDOException $e) { die("连接失败: " . $e->getMessage()); } ?>
常见问题解决
-
连接被拒绝(ERROR 2002)
- 检查 MySQL 服务状态:
sudo systemctl status mysql
。 - 确认是否绑定到本地地址:查看
/etc/mysql/mysql.conf.d/mysqld.cnf
中bind-address = 127.0.0.1
(改为0.0.0
可远程访问,需重启服务)。
- 检查 MySQL 服务状态:
-
权限错误(ERROR 1045)
- 重置密码:
sudo mysql --skip-grant-tables # 免密启动 mysql> UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root'; mysql> FLUSH PRIVILEGES;
- 重置密码:
-
防火墙拦截
- 开放 3306 端口:
sudo ufw allow 3306/tcp # Ubuntu sudo firewall-cmd --add-port=3306/tcp --permanent # CentOS
- 开放 3306 端口:
安全建议
-
避免使用 root 账户
- 为每个应用创建独立用户并授权:
CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'strong_password'; GRANT SELECT, INSERT ON db_name.* TO 'app_user'@'localhost';
- 为每个应用创建独立用户并授权:
-
启用 SSL 加密
- 在 MySQL 配置文件中启用
require_secure_transport=ON
。
- 在 MySQL 配置文件中启用
-
定期备份
- 使用
mysqldump
:mysqldump -u root -p 数据库名 > backup.sql
- 使用
掌握 Linux 下访问 MySQL 的方法能显著提升工作效率,命令行适合快速操作和自动化脚本,图形工具适合数据可视化管理,编程接口则用于应用集成,遇到问题时,优先检查服务状态、网络连接和账户权限,保持软件更新并遵循最小权限原则,可确保数据库安全稳定运行。
引用说明:本文操作基于 MySQL 8.0 及主流 Linux 发行版(Ubuntu/CentOS),安全建议参考 MySQL 官方安全指南,命令行工具文档详见
man mysql
。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5772.html