小编给大家分享一下新搭建的MySQL登陆报错mysql Segmentation fault怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
成都创新互联长期为数千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为云龙企业提供专业的成都做网站、网站建设,云龙网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
环境介绍:
操作系统:CentOS Linux release 7.3.1611
192.168.0.44
192.168.0.45
mysql版本:mysql-5.6.38
源码安装完成后,尝试登录,报错如下
[root@localhost bin]#mysql
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.6.24 Source distribution
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
mysql Segmentation fault (core dumped)
==========解决方法============
在源码包里,编辑文件/media/mysql-5.6.38/cmd-line-utils/libedit/terminal.c (mysql 安装包所在路径)
把terminal_set方法中的 char buf[TC_BUFSIZE]; 这一行注释,再把 area = buf;改为 area = NULL;
更改后如下红色部分
protected int
terminal_set(EditLine el, const char *term)
{
int i;
/*char buf[TC_BUFSIZE];*/
char *area;
const struct termcapstr *t;
sigset_t oset, nset;
int lins, cols;
--phpfensi.com
(void) sigemptyset(&nset);
(void) sigaddset(&nset, SIGWINCH);
(void) sigprocmask(SIG_BLOCK, &nset, &oset);
area = NULL;
然后重新编译即可
[root@ora101 media]# cd mysql-5.5.37
[root@ora101 mysql-5.6.38]# cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DENABLED_LOCAL_INFILE=1
[root@ora101 mysql-5.6.38]# make
[root@ora101 mysql-5.6.38]# make install
问题解决。。。。。
以上是“新搭建的mysql登陆报错mysql Segmentation fault怎么办”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!