首页 > 数据库 >MySQL8(glibc2.28)二进制安装

MySQL8(glibc2.28)二进制安装

时间:2023-06-18 23:34:47浏览次数:76  
标签:MySQL8 make glibc2.28 二进制 usr so.6 mysql -- local

操作系统:centos7.9

安装数据库:mysql-8.0.33-linux-glibc2.28

一、升级gcc(传送阵:升级gcc

1、添加mysql8依赖库软连接

mv /lib64/libstdc++.so.6 /lib64/libstdc++.so.6_old
ln -s /usr/local/gcc/lib64/libstdc++.so.6 /lib64/libstdc++.so.6

2、查看GLIBC_2.28是否更新成功

strings  /lib64/libstdc++.so.6 | grep ^CXXABI

 

centos7版本系统 glibc版本为:2.17,如果使用glibc2.28版本需要进行编译安装升级,如果使用glibc2.17,则不用进行二、三步骤。

二、升级make,升级glibc需要使用高版本make

1、下载make

cd /usr/local/src
wget http://ftp.gnu.org/gnu/make/make-4.3.tar.gz

2、解压、编译安装

tar -xzvf make-4.3.tar.gz
cd make-4.3
./configure --prefix=/usr/local/make
make
make install

3、更换make版本

mv /usr/bin/make /usr/bin/make_old
cp /usr/local/make/bin/make /usr/bin/make
make -v

 

三、升级glibc

1、下载glibc2.28

cd /usr/local/src
wget http://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz

2、安装依赖

yum install -y bison 

3、解压、编译安装

cd glibc-2.28
mkdir build 
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make && make install

编译报错:

  1)、在配置编译时报错:These critical programs are missing or too old: compiler

  解决方法:说明gcc版本过低,检查第一步,最好使用删除之前gcc版本的方式。

  2)、在make install时,报错/usr/bin/ld: cannot find -lnss_test2

  解决方法:

#修改文件大概128行
vim /usr/local/src/glibc-2.28/scripts/test-installation.pl
    #将 && $name ne "nss_test1" && $name ne "libgcc_s" 
    #改为:
    && $name ne "nss_test1" && $name ne "libgcc_s" && $name ne "nss_test2"

  然后重新执行make install

4、检查更新是否成功

strings /lib64/libc.so.6|grep ^GLIBC

 

 四、升级ncurses

1、下载ncurses

cd /usr/local/src
wget https://mirrors.aliyun.com/gnu/ncurses/ncurses-6.3.tar.gz

2、解压、编译安装

tar zxf ncurses-6.3.tar.gz
cd ncurses-6.3
./configure --prefix=/usr/local/ncurses --with-shared
#--with-shared  生成共享库
make
make install

3、添加依赖库软连接

ln -s /usr/local/ncurses/lib/libncurses.so.6 /lib64/libncurses.so.6

 

五、安装mysql8

1、下载二进制包

cd /usr/local/src
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.33-linux-glibc2.28-x86_64.tar.gz

2、解压

tar zxf mysql-8.0.33-linux-glibc2.28-x86_64.tar.gz -C /usr/local

 3、修改安装目录名称

mv /usr/local/mysql-8.0.33-linux-glibc2.28-x86_64/ /usr/local/mysql

4、创建用户

groupadd mysql
useradd -g mysql mysql -s /sbin/nologin

5、创建数据、日志目录

mkdir /usr/local/mysql/{data,logs}

6、修改权限

chown -R mysql:mysql /usr/local/mysql/{data,logs}

7、根据需求修改配置文件

[mysqld]
port = 3306
server-id = 1
user = mysql
socket = /tmp/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-bin = mysql-bin
log-error = /usr/local/mysql/logs/error.log
#大小写敏感:默认为0,敏感.
#lower_case_table_names=1
max_connections = 1500
expire_logs_days =7
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

 8、配置环境变量

vi /etc/profile.d/mysql.sh
    #添加以下配置
    export PATH=/usr/local/mysql/bin:$PATH

source /etc/profile.d/mysql.sh

9、初始化数据库,启动数据库

mysqld --defaults-file=/etc/my.cnf  --initialize-insecure
mysqld_safe --defaults-file=/etc/my.cnf &

初始化/启动数据库报错:

  1)、mysqld: /lib64/libstdc++.so.6: version `CXXABI_1.3.11' not found (required by mysqld)

  说明libstdc++.so.6版本未更新成功,检查第一步。

  2)、mysqld: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by mysqld)

  说明glibc升级有问题,检查第三步。

10、登录数据库

mysql -uroot -p

登录数据库报错:

  1)、mysql: error while loading shared libraries: libncurses.so.6: cannot open shared object file: No such file or directory

   解决方法:检查第四步

  2)、 mysql: error while loading shared libraries: libtinfo.so.6: cannot open shared object file: No such file or directory

   解决方法:ln -s /lib64/libtinfo.so.5 /lib64/libtinfo.so.6

11、修改密码

mysql> alter user 'root'@'localhost' identified by '123456';
mysql> flush privileges;

12、开启远程登录

mysql> update mysql.user set host='%' where user='root';
mysql> flush privileges;

 

标签:MySQL8,make,glibc2.28,二进制,usr,so.6,mysql,--,local
From: https://www.cnblogs.com/NanZhiHan/p/17488337.html

相关文章

  • CF1778C - Flexible String 二进制枚举、状态压缩
    参考splay佬的题解写个记录https://zhuanlan.zhihu.com/p/602721281题意:给定两个字符串a,b,可以选择α里面的字符进行替换,但是替换的字符种类最多为k个。其中字符串α字符出现的种类不超过10种。求将替换后,两个字符的相同部分的数量。(相同部分指的是,指定一个区间[l,r],对应区间相......
  • Binary Ninja (二进制忍者)简介
    https://binary.ninja/专为新手打造的反汇编器 第一印象     软件简介虽然IDA在反汇编器的地位无人可以撼动,但是新手使用IDA往往也会感到无所适从。BinaryNinja以其精美的界面和便捷的交互方式,使得新人简单了解后就能很快上手。运行平台:支持windows、linux,macos。具体来说,L......
  • 二进制加法运算小技巧
    二进制加法位运算回顾&(位与):都为1结果为1否则为0|(位或):都为0结果为0否则为1--有1结果就是1^(异或):相同为0不同为1~(取反):0变11变0二进制加法运算以7+8=15为例即:1111000=1111关键点:涉及到进位操作该如何处理如1111+1......
  • Docker 安装 MySQL8 数据库
    创建数据卷mkdir-p/usr/mysql/conf/usr/mysql/datachmod-R755/usr/mysql/创建配置文件vim/usr/mysql/conf/my.cnf:[client]#socket=/usr/mysql/mysqld.sockdefault-character-set=utf8mb4[mysqld]#pid-file=/var/run/mysqld/mysqld.pid#socket......
  • 二进制文件安装mysql5.7
    yum安装mysql5.7虽然方便,但是安装的路径和配置难以定制化,这边使用二进制安装,即使用官方提供的编译软件包来安装,不需要额外准备依赖的环境软件,安装也会变的更加轻量,且可以定制化。一、自定制规范Mysql本身没有明确的安装规范,但是日常工作中为了便于管理和定位问题,我们需要对Mysql......
  • 统计出整形数值二进制位里面包含的1的个数
    /*printfexample*/#include<stdio.h>intcount_one(intn){intcount=0;while(n){n=n&(n-1); count++;}returncount;}intmain(){inta=-1;printf("%d",count_one(a));return0;} 结果: ......
  • oracle统计出正整数对应二进制的里面1的位数
    declarennumber:=15; count1int:=0;begin whilen<>0 loop n:=bitand(n,n-1); count1:=count1+1; endloop; dbms_output.put_line(count1); end;结果为:   对于负数oracle似乎处理不了,正整数没问题。......
  • linux服务器mysql的简单安装和使用(基于二进制文件方式)
    mysql下载地址https://downloads.mysql.com/archives/community/版本选择 直接放置/root目录下     常规操作查找以前是否装有mysqlrpm-qa|grep-imysql如果找到或者以前安装过有遗留文件,操作如下命令删除命令:rpm-e--nodeps包名删除老版本m......
  • 二进制安装Tomcat
    注意:安装tomcat前必须先部署JDK[root@centos8~]#wgethttp://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.50/bin/apache-tomcat-8.5.50.tar.gz[root@centos8~]#wgethttps://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.88/bin/apache-tomc......
  • 二进制安装ZABBIX-server
    #wgethttps://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu22.04_all.deb#dpkg-izabbix-release_6.0-4+ubuntu22.04_all.deb#aptupdate安装Zabbixserver,Web前端,agent#aptinstallzabbix-server-mysqlzabbix-fron......