当前位置:网站首页>linux环境安装mysql和使用中的常见问题
linux环境安装mysql和使用中的常见问题
2022-08-08 23:35:00 【程序员lm】
本文针对的环境是 centos 6.8 mysql 5.6.24版本
1.执行命令 service msyql status查看mysql运行状态时报错:MySQL is not running, but lock file
解决:移除锁文件,并把该lock文件位置设定;
rm /var/lock/subsys/mysql
lock file 在 /etc/rc.d/init.d/mysql 中设定修改lockdir
vi /etc/rc.d/init.d/mysql
2.重启mysql服务的时候 报错:
Starting MySQL........The server quit without updating PID [失败]/usr/local/mysql/data/mysql/hadoop102.pid).
解决:直接找到对应的文件进行查看pid文件,这个hadoop102.pid其实就是一个错误日志文件,也有可能叫hadoop102.err(hadoop102这里是你linux主机的名称)
cat /usr/local/mysql/data/mysql/hadoop102.pid
当时我遇到的具体报错信息如图:
原因:其实这个是我当时设定默认编码格式的弄错了;
打开 vi /usr/my.cnf 文件(有的默认配置文件在/etc/my.cnf)
注释掉 default-character-set=utf8或者更改位置,写在client下就行
service mysql start 重启就好使了
针对设定编码格式的补充:
[client]下添加:default-character-set=utf8
[mysqld]下添加:character_set_server=utf8
3.启动mysql 服务的时候 报错 can't open the mysql plugin table
解决:其实就是启动找不到mysql 的数据文件。 mysql 的数据文件默认位置为 /var/lib/mysql
查看自己配置文件 vi /usr/my.cnf 文件 datadir的配置
我自己配置的为 如图
因此针对这个问题,可以有两种解决方式:
1)将/var/lib/mysql 数据文件全部移到/usr/local/mysql/data 下
mv /var/lib/mysql /usr/local/mysql/data
2)修改my.cnf文件中,数据的存放路径,同时需要修改Mysql启动文件 /etc/rc.d/init.d/mysql 中datadir
vi my.cnf 添加如下一行
修改MySQL启动脚本/etc/rc.d/init.d/mysql
vi /etc/rc.d/init.d/mysql
添加 datadir=/usr/local/mysql/data/mysql ,如图
4. 在创建表时 报错[Err] 1071 - Specified key was too long; max key length is 767 byte
原因:MySQL的varchar主键只支持不超过768个字节 或者 768/2=384个双字节 或者 768/3=256个三字节的字段 ,而 GBK是双字节的,UTF-8是三字节的。脚本中有三个索引建立在了编码为GBK,varchar(500)的字段上,所以导致超过限定的长度。
解决:修改默认编码为utf8
[client]下添加:default-character-set=utf8
[mysqld]下添加:character_set_server=utf8
但是需要注意的是,在更改编码格式之前建立的数据库会保持创建时的编码格式,于是在更改数据库编码格式后,需要重新建立数据库!
5.在使用socket连接方式 报错:mysql Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
1)可以修改smysql.sock 存放目录(my.cnf有的机器也在/etc/my.cnf下),想查找执行 whereis my.cnf
vi /usr/my.cnf
在【mysqld】下添加 socket =/usr/local/mysql/data/mysql/mysql.sock
然后重启mysql 服务
service msyql restart
2)连接时指定 socket目录
mysql -uroot -p123456 --socket='/usr/local/mysql/data/mysql/mysql.sock'
3)通过mysql.sock建立软连接在执行socket连接
ln -s /usr/local/mysql/data/mysql/mysql.sock /var/lib/mysql/mysql.sock
将我设定 的socket文件位置,在/var/lib/mysql下放置一份,以供读取
结果如图:
版权声明:本文为博主原创文章,转载请注明本页地址。https://blog.csdn.net/l1994m/article/details/88198640
边栏推荐
- 【Tensorflow2】tensorflow1.x-tensorflow2.x一些接口的转变
- (2022杭电多校四)1001-Link with Bracket Sequence II(区间动态规划)
- (2022牛客多校四)A-Task Computing (排序+动态规划)
- grpc系列3-自定义端镜像GOAWAY with error code ENHANCE_YOUR_CALM and debug data equal to “too_many_pings“
- 【瑞吉外卖】day04:员工分页查询、启用/禁用员工账号、编辑员工信息
- 【CUDA】版本自由切换
- 最详树莓派4B装机流程及ifconfig不到wlan0的解决办法
- [YOLOv5] 6.0 environment construction (updated from time to time)
- 启牛商学院靠不靠谱呢?证券账户开了安全吗
- STM8L 液晶数码管驱动,温度计液晶屏显示
猜你喜欢
Introduction to Qt (4) - Continuous playback of pictures (the use of two timers)
Learning experience of bp neural network
二叉树 层次遍历 及例题
51nod 2882最短路 (树链剖分)
2021 RoboCom 世界机器人开发者大赛-本科组(决赛)7-4猛犸不上 Ban(最短路)
域前置通信过程和溯源思路
(newcoder 15079)无关(容斥原理)
WeChat applet error undefined Expecting 'STRING','NUMBER','NULL','TRUE','FALSE','{','[', got ]Solution
2022牛客多校六 B-Eezie and Pie (dfs)
Excel 2013 下拉为“快速分拆”调整为“填充序号”
随机推荐
神经网络学习笔记(1)
PHP regular to img SRC to add the domain name
2022杭电多校六 1009-Map (巴那赫不动点)
ABP中的数据过滤器
[Pytorch] Study Notes (1)
04 Spark on 读取外部数据分区策略(源码角度分析)
mysql主从复制
(2022牛客多校三)J-Journey(dijkstra)
抽象内部类
moved异常,ask重定向
09 Spark on RDD 阶段划分
Binary tree level traversal and examples
Manacher(求解最长回文子串)
时间对象的格式化
用模态框 实现 注册 登陆
2022杭电多校五 C - Slipper (dijkstra+虚拟结点)
51nod1656 合并trie树
(2022杭电多校四)1001-Link with Bracket Sequence II(区间动态规划)
51nod 2877熟练使用tarjan的知识
【Tensorflow2】tensorflow1.x-tensorflow2.x一些接口的转变