mysql段错误,MySQL 5.6.27登录出错:段错误 (Segmentation fault)解决.附安装及配置

如果系统是最小化安装的,需先安装GCC环境及MYSQL依懒的ncurses

yum install -y gcc* ncurses-devel

安装Zlib

wget http://zlib.net/zlib-1.2.8.tar.gz

tar zxf zlib-1.2.8.tar.gz -C /usr/local/src/

cd /usr/local/src/zlib-1.2.8/

CFLAGS="-fPIC -O3" ./configure --shared --64

make -j `cat /proc/cpuinfo | grep processor | wc -l`;make install

chcon -R -u system_u /usr/local/lib/libz.so*

安装Cmake

cd

wget http://www.cmake.org/files/v3.2/cmake-3.2.2.tar.gz

tar zxf cmake-3.2.2.tar.gz -C /usr/local/src/

cd /usr/local/src/cmake-3.2.2/

./configure

gmake;gmake install

建立mysql运行用户和数据存储目录:

groupadd -g 200 mysql

useradd -u 200 -g mysql -s /sbin/nologin -d /var/lib/mysql -M mysql

mkdir -p /var/lib/mysql

chown -R mysql:mysql /var/lib/mysql/

解压Mysql并使用Cmake进行编译前配置

tar zxf mysql-5.6.27.tar.gz -C /usr/local/src/

cd /usr/local/src/mysql-5.6.27/

编译前配置,所有参数可在

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/var/lib/mysql/ -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DSYSCONFDIR=/usr/local/mysql/ -DWITH_ZLIB=/usr/local/

参数意义:

-DCMAKE_INSTALL_PREFIX设置安装路径

-DMYSQL_DATADIR设置Mysql数据目录位置

-DMYSQL_UNIX_ADDR 设置Mysql Sockt位置

-DDEFAULT_CHARSET、-DDEFAULT_COLLATION、-DEXTRA_CHARSETS设置默认字符集和扩展字符集

-DWITH_INNOBASE_STORAGE_ENGINE等,启用所有引擎

–DSYSCONFDIR设置Mysql配置文件目录

编译

make -j `cat /proc/cpuinfo | grep processor | wc -l`

-j设置编译时使用的CPU数量,默认一个

cat /proc/cpuinfo | grep processor | wc –l统计CPU核数

安装

make install

安装后配置:

拷贝默认配置文件:

cp /usr/local/mysql/support-files/my-default.cnf /usr/local/mysql/my.cnf

禁用系统自带的

mv /etc/my.cnf /etc/my.cnf.bak

按其提示,去除#号,修改配置文件:

dfcc62e9b8a4b594a2255bd84f08f754.png

初始化数据库:

cd /usr/local/mysql/

./scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql

初始化若报错缺少perl-Data-Dumper,安装perl-Data-Dumper库即可059b3d8c2e7ef6c98e27554bd7d45259.png完成之后它会提示你创建root用户密码:

先启动数据库

/usr/local/mysql/bin/mysqld_safe --user=mysql &

创建密码

/usr/local/mysql/bin/mysqladmin -u root password 'Admin'

安全初始化:

cd /usr/local/mysql/

./bin/mysql_secure_installation

dc36e0310c427f5e1bc9eadc3f17891e.png

按其提示配置即可。

配置为系统服务(RHEL7/CentOS7以下):

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

chkconfig --add /etc/init.d/mysqld

chkconfig --level 35 mysqld on

之后即可使用service命令管理

service mysqld start

2edc6e183f8393c4614359d8f8ed96a4.png

RHEL7/CentOS7之后使用systemctl来管理服务,可使用如下方法添加为服务

从源码包从拷贝systemd启用脚本

cp /usr/local/src/mysql-5.6.27/packaging/rpm-oel/mysql-systemd-start

修改编辑

/usr/local/mysql/bin/

chmod +x /usr/local/mysql/bin/mysql-systemd-start

cd /usr/local/mysql/bin

sed -i 's/\/usr\/bin/\/usr\/local\/mysql\/bin/g' mysql-systemd-start

sed -i 's/mysqladmin/\/usr\/local\/mysql\/bin\/mysqladmin/g' mysql-systemd-start

从源码包从拷贝服务脚本:

cp /usr/local/src/mysql-5.6.27/packaging/rpm-oel/mysqld.service /usr/lib/systemd/system/

修改路径

sed -i 's/\/usr\/bin/\/usr\/local\/mysql\/bin/g' /usr/lib/systemd/system/mysqld.service

启用并启动服务

systemctl enable mysqld.service

systemctl start mysqld.service

b7a86f9a288a17ce3711dc743ee79bf8.png

访问及防火墙开放端口

终端下可这样访问:

/usr/local/mysql/bin/mysql -uroot –p

8811d4e6055d010d76758fab49c0916f.png

打开防火墙端口

RHEL7/CentOS7使用

firewall-cmd --permanent --add-service=mysql

firewall-cmd –reload

RHEL7/CentOS7以前使用iptables

iptables -I INPUT 1 -p tcp --dport 3306 -j ACCEPT

其它机器访问

da81ca2326e13898f29d10b964bb1727.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值