linux 上 mysql 使用问题汇总

最近学习大数据基础知识,使用 Kafka 模拟了生产者和消费者的流程。首先在 Mac 电脑上安装了 VirtualBox 应用,利用 VirtualBox 搭建了 3 台 Linux 虚拟机,利用 Zookeeper 对三台 Linux 服务器进行管理。在消费者读取数据后,将Kafka 传递的消息存储到 MySQL 中。在 Linux 虚拟机上安装 MySQL 过程中遇到了如下问题,对各个问题的解决方式记录如下:

1 mysql 启动

service mysql start

出现错误:

Job for mysql.server.service failed because the control process exited with error code. See "systemctl status mysql.server.service" and "journalctl -xe" for details.

解决方法
配置 error.log 和 socket 的路径:

[mysqld_safe]
log-error = /data/mysql/logs/error.log

[mysqld]
skip-grant-tables
datadir = /usr/local/mysql/data
socket = /var/lib/mysql/mysql.sock

出现错误

2019-05-07 23:18:18 2515 [ERROR] Can't start server : Bind on unix socket: Address already in use
2019-05-07 23:18:18 2515 [ERROR] Do you already have another mysqld server running on socket: /var/lib/mysql/mysql.sock ?

解决方法:

1 将 mysql.sock 移除
rm  mysql.sock  文件路径
2  运行命令:service mysql stop
3 赋予 mysql.sock  文件存放目录的权限 
chown -R mysql:root /var/lib/mysql

2 查看 mysql 启动日志

systemctl status mysql.server.service -l

出现错误:

Starting MySQL. ERROR! The server quit without updating PID file (/var/run/mysqld/mysqld.pid).

解决方法:

打开 /usr/local/mysql/etc/my.cnf配置文件,在[mysqld]节下指定数据目录(datadir):datadir = /usr/local/mysql/data

3 登录 mysql

mysql -uroot -p

出现错误:

Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

解决方法1 :

cp /var/lib/mysql/mysql.sock   /tmp/mysql.sock  (源地址->目的地址)

cp 时出现 : 无法打开"/var/lib/mysql/mysql.sock" 读取数据: 没有那个设备或地址

解决方法2 : 软连接

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
喜欢和关注都是对我的鼓励和支持~

你可能感兴趣的:(linux 上 mysql 使用问题汇总)