linux 下MySQL本地安装mysql - u root - p 无法登入

当尝试用`mysql -u root -p`登录MySQL时出现ERROR 2002,原因是无法连接到本地MySQL服务器。解决方案是检查用户是否有启动MySQL脚本的权限,可以使用root账户或sudo尝试登录。此外,提供了详细的MySQL本地安装步骤,包括创建用户组、数据目录、初始化数据库、设置密码以及允许远程连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误信息:mysql - u root - p 无法登入,ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/data/mysql/mysql.sock’ (13)

解决方案:查到的其他解决方案大多是说要配置socket=/data/mysql/mysql.sock,配置还是报这个错误,经检查如果是用户没启动mysql脚本权限也会遇到这个问题,使用root账号或者sudo mysql -u root -p可解决。

附:安装步骤明细

解压安装包
tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
重命名
mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql
创建MySQL用户组和用户并修改权限
groupadd mysql
useradd -r -g mysql mysql
创建数据目录并赋予权限。
mkdir -p /data/mysql #创建目录
chown mysql:mysql -R /data/mysql #赋予权限
vi /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/data/mysql/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_serv

### 如何在Linux系统上下载并安装MySQL #### 准备工作 在开始之前,需要确认操作系统的具体版本以及架构信息。如果目标操作系统为CentOS 7,则可以选择适合的RPM包进行安装[^1]。 #### 下载MySQL 访问官方存档页面获取所需的MySQL社区版软件包: - 官方链接:[https://downloads.mysql.com/archives/community/](https://downloads.mysql.com/archives/community/) - 对于CentOS 7,选择`Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit)`对应的PRM Bundle文件[^1]。 #### 安装依赖项 确保系统已更新至最新状态,并安装必要的工具和库: ```bash yum update -y yum install wget vim net-tools -y ``` #### 安装MySQL RPM包 假设已经成功下载了所有必需的RPM文件,按照以下顺序逐一执行安装命令: ```bash rpm -ivh mysql-community-common-*.rpm rpm -ivh mysql-community-libs-*.rpm rpm -ivh mysql-community-client-*.rpm rpm -ivh mysql-community-server-*.rpm ``` 此过程会依次完成公共组件、客户端插件、服务器端程序等模块的部署[^4]。 #### 初始化配置 启动MySQL服务并将之设置为开机自启: ```bash systemctl start mysqld systemctl enable mysqld ``` 验证服务运行状况: ```bash systemctl status mysqld ``` 以上指令可以确保MySQL后台进程正常运作[^2]。 #### 修改默认密码策略 初次录可能会遇到权限拒绝错误,这是因为尚未设定合法账户凭证所致。通过跳过授权表的方式重置管理员口令: ```bash mysqld_safe --user=mysql --skip-grant-tables --skip-networking & mysql -u root ``` 进数据库控制台后修改根用户的认证数据: ```sql UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root'; FLUSH PRIVILEGES; quit; ``` 注意替换其中的新密码部分为自己定义的安全字符串[^3]。 #### 测试连接功能 尝试以指定用户名再次接检验调整效果: ```bash mysql -uroot -p ``` 输刚才创建的秘密码即可顺利管理系统界面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值