Linux下连接mysql命令行报错问题解决

由于导出的数据库文件太大了,好几个G,在navicat工具导入了一天都没完成,决定在mysql命令行下用source命令导入

连接时报错了,如下:

# mysql -uroot -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/apps/dbdat/mysql5_data3306/mysql.sock' (2)

通过查找/etc/my.cnf文件,发现该文件指定的socket就是报错中提示的,但是在该路径下根本找不到这个sock文件,

通过ps -ef | grep mysql 查看文件对应的配置信息,如下:

# ps -ef | grep mysql
apps     17724 27153  4 Mar03 ?        00:17:12 /apps/svr/mysql57/bin/mysqld --defaults-file=/apps/conf/mysql/mysql57_3306.cnf --basedir=/apps/svr/mysql57 --datadir=/apps/dbdat/mysql57_data3306 --plugin-dir=/apps/svr/mysql57/lib/plugin --user=apps --log-error=/apps/logs/mysql/error3306.log --pid-file=/apps/dbdat/mysql57_data3306/mysql.pid --socket=/tmp/mysql3306.sock --port=3306
root     18534 18484  0 01:32 pts/0    00:00:00 grep --color=auto mysql
root     27152     1  0 Jan09 ?        00:00:00 sudo /usr/bin/numactl --interleave=all /apps/svr/mysql57/bin/mysqld_safe --defaults-file=/apps/conf/mysql/mysql57_3306.cnf --ledir=/apps/svr/mysql57/bin
root     27153 27152  0 Jan09 ?        00:00:00 /bin/sh /apps/svr/mysql57/bin/mysqld_safe --defaults-file=/apps/conf/mysql/mysql57_3306.cnf --ledir=/apps/svr/mysql57/bin

发现在进程中指定的socket是/tmp/mysql3306.sock,而不是报错中提示的内容,需要在使用mysql命令进行连接时加上

--socket=/tmp/mysql3306.sock 这个参数,好了,连上了~~~

dba大神还说了一点,看到的默认的/etc/my.cnf文件不一定就是mysql的配置文件,关键还是看mysql进程中指定的默认的文件,看

--defaults-file 这个参数的值

顺便贴两个根据常见的M/G/K为单位查看文件大小的命令吧:

查看文件大小

1、列表查看文件大小  ls -lht

2、单独查看某一个文件大小 ls -lh file

3、查看当前目录下的各文件夹的大小   du -sh * 

贴个导入文件的命令吧:

source  路径/文件

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值