centos下编译安装mysql报错解决方案

下面是在CentOS下编译安装MySQL出现错误的解决方案攻略:

1. 安装编译所需的依赖库

在进行MySQL的编译安装前,需要安装一些必要的依赖库。执行以下命令安装:

yum install -y gcc gcc-c++ ncurses-devel cmake autoconf libtool libaio

2. 下载MySQL的源码包

下载MySQL的源码包,在官网上选择合适的版本进行下载,可以使用wget命令,例如:

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.29.tar.gz

3. 解压源码包并进行配置

解压源码包,并进入源码包所在目录,执行以下命令进行配置:

tar -zxvf mysql-5.7.29.tar.gz
cd mysql-5.7.29
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DMYSQL_DATADIR=/usr/local/mysql/data \
    -DWITH_BOOST=/usr/local/boost \
    -DSYSCONFDIR=/etc \
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \
    -DWITH_MYISAM_STORAGE_ENGINE=1 \
    -DENABLED_LOCAL_INFILE=1 \
    -DWITH_READLINE=1 \
    -DWITH_SSL=system \
    -DWITH_ZLIB=system

其中,-DCMAKE_INSTALL_PREFIX指定了MySQL安装路径,-DWITH_BOOST指定了Boost库的安装路径,-DSYSCONFDIR指定了配置文件的路径,其他的是一些常用配置项。

4. 进行编译和安装

执行以下命令进行编译和安装:

make && make install

5. 配置MySQL

执行以下命令进行配置:

cd /usr/local/mysql
cp support-files/my-default.cnf /etc/my.cnf
bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

6. 启动MySQL

执行以下命令启动MySQL:

bin/mysqld_safe --user=mysql &

如果出现以下错误:

Starting mysqld daemon with databases from /usr/local/mysql/data
2018-04-12T10:02:14.067788Z mysqld_safe Logging to '/usr/local/mysql/data/servername.err'.
2018-04-12T10:02:14.367451Z mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
/usr/local/mysql/bin/mysqld: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
2018-04-12T10:02:14.399128Z mysqld_safe mysqld from pid file /usr/local/mysql/data/servername.pid ended

则需要执行以下命令安装相应的库:

yum install -y ncurses-devel

如果出现以下错误:

Starting mysqld daemon with databases from /usr/local/mysql/data
2018-04-12T10:06:47.573063Z mysqld_safe Logging to '/usr/local/mysql/data/servername.err'.
2018-04-12T10:06:47.874128Z mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
2018-04-12T10:06:47.942250Z mysqld_safe mysqld from pid file /usr/local/mysql/data/servername.pid ended

则需要查看错误日志文件,命令如下:

cat /usr/local/mysql/data/servername.err

根据错误日志文件中的提示进行排错。

至此,CentOS下编译安装MySQL报错的解决方案攻略完成。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:centos下编译安装mysql报错解决方案 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • 2023云数据库技术沙龙MySQL x ClickHouse专场成功举办

    4月22日,2023首届云数据库技术沙龙 MySQL x ClickHouse 专场,在杭州市海智中心成功举办。本次沙龙由玖章算术、菜根发展、良仓太炎共创联合主办。围绕“技术进化,让数据更智能”为主题,汇聚字节跳动、阿里云、玖章算术、华为云、腾讯云、百度的6位数据库领域专家,深入 MySQL x ClickHouse 的实践经验和技术趋势,结合企业级的真实场…

    MySQL 2023年4月25日
    00
  • mysql导入失败

    mysqldump导出数据库表的数据会加上一些SQL的注释,这些注释会在批量执行SQL语句中造成错误,需要提前删除。 sql开始部分: SET @@SESSION.SQL_LOG_BIN = @MYSQLDUMP_TEMP_LOG_BIN; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_…

    MySQL 2023年4月13日
    00
  • Mysql性能优化案例研究-覆盖索引和SQL_NO_CACHE

    下面是关于“Mysql性能优化案例研究-覆盖索引和SQL_NO_CACHE”的详细讲解攻略。 覆盖索引 什么是覆盖索引 覆盖索引是指一个查询中的字段都可以从索引中取得,无需回表查找。这种查询方法可以提高查询效率,减少回表查询的次数,从而提高了MySQL的查询性能。 如何使用覆盖索引 具体来说,使用覆盖索引需要注意以下几点: 索引要包含查询字段和需要的返回字段…

    MySQL 2023年5月19日
    00
  • MySql中执行计划如何来的——Optimizer Trace

    作者:京东物流 籍磊 1.前言 当谈到MySQL的执行计划时,会有很多同学想:“我就觉得使用其他的执行方案比EXPLAIN语句输出的方案强,凭什么优化器做的决定与我得不一样?”。这个问题在MySQL 5.6之前或许自己很难解决,但是现在MySQL5.6及更高的版本中引入了Optimizer Trace。 2.optimizer_trace开启方式及表结构 当…

    MySQL 2023年4月27日
    00
  • Mysql升级到5.7后遇到的group by查询问题解决

    当将MySQL数据库升级到5.7版本后,可能会出现一些与group by查询相关的问题,这是因为MySQL 5.7的group by语句在某些情况下会产生与之前版本不同的结果。 为了解决这些问题,可以采用以下步骤: 1.启用SQL_MODE MySQL 5.7具有更严格的SQL_MODE,以提高数据的一致性和准确性。可以通过修改/etc/mysql/mysq…

    MySQL 2023年5月18日
    00
  • MySQL MHA信息的收集【Filebeat+logstash+MySQL】

    一.项目背景 随着集团MHA集群的日渐增长,MHA管理平台话越来越迫切。而MHA平台的建设第一步就是将这些成百上千套的MHA集群信息收集起来,便于查询和管理。 MHA主要信息如下: (1)基础配置信息; (2)运行状态信息; (3)启动及FailOver的log信息。 集团目前数据库的管理平台是在Archery的基础上打造,所以,需要将此功能嵌入到既有平台上…

    MySQL 2023年4月17日
    00
  • MySQL 5.6下table_open_cache参数优化合理配置详解

    MySQL的table_open_cache参数是控制MySQL数据库中打开表的缓存数量的参数。合理配置table_open_cache参数能够有效的提升MySQL数据库的性能。下面就是一个关于MySQL 5.6下table_open_cache参数优化合理配置的详细攻略。 什么是table_open_cache参数 table_open_cache参数是M…

    MySQL 2023年5月19日
    00
  • 用bpftrace窃取Mysql账号密码

    简单演示一下如何利用bpftrace窃取Mysql的账号密码 前言 记得在360实习的时候,听到过一句话,大部分的安全问题并不是黑客造成的,而是内部人员。epbf可以避免代码侵入,像桩子一样监控应用,同时也带来了一些安全问题。 下面简单演示一下如何利用bpftrace窃取Mysql的账号密码。 步骤 Go程序 这个程序只是利用xorm连接数据库,然后判断st…

    MySQL 2023年4月11日
    00
合作推广
合作推广
分享本页
返回顶部