在 MySQL 开发与运维中,普通用户的创建与权限管控是保障数据库安全的基础。而本地连接、远程访问的配置,以及 C/C++ 程序的对接调用,则是打通'数据库 - 应用'链路的核心环节。很多开发者在实际操作中会遇到'用户创建后登录失败''远程连接被拒绝''C/C++ 接口调用报错'等问题。本文将从实战出发,拆解 MySQL 普通用户的创建配置、本地/远程登录的关键步骤,以及 C/C++ 访问 MySQL 的完整流程(含环境搭建、代码实现、常见问题排查),帮助开发者快速搞定多场景下的 MySQL 访问需求。
一、普通用户的创建与管理
1. 查看 user 表
user 表属于 mysql 系统库,需先切换到该库:
use mysql;
再查询账户信息:
select host,user,authentication_string from user;
2. 创建普通用户
注意:本地登录时,主机名填 localhost;若需支持公网或任意 IP 登录,可填 %。
create user '用户名'@'登陆主机/ip' identified by '密码';
3. 删除普通用户
主机名可用 localhost、% 或真实 IP 替换。
drop user '用户名'@'主机名';
4. 修改密码
修改当前用户自己的密码:
set password for '用户名'@'主机名'=password('新的密码');
由 root 账号修改指定普通用户的密码:
set password for '用户名'@'主机名'=password('新的密码');
提示:生产环境建议使用
ALTER USER语法,兼容性更好。
5. 数据库权限分配
权限列表基本对应 SQL 指令关键字。给用户添加权限:
权限列表 库。对象名 @;


