64位CentOs7源码安装mysql-5.6.35过程分享

yizhihongxing

64位CentOS7源码安装MySQL-5.6.35过程分享

环境准备

首先需要安装一些必要的软件,包括C++编译器、make工具、cmake等,以及MySQL所需要的一些依赖库。

示例命令:

yum groupinstall "Development Tools"
yum install cmake
yum install ncurses-devel

下载源码

从MySQL官网下载MySQL-5.6.35源码,并解压。

示例命令:

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35.tar.gz
tar -xzvf mysql-5.6.35.tar.gz

编译安装

进入解压后的mysql-5.6.35目录,使用cmake进行编译和安装。

示例命令:

cd mysql-5.6.35
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
        -DMYSQL_DATADIR=/usr/local/mysql/data \
        -DSYSCONFDIR=/etc \
        -DWITH_MYISAM_STORAGE_ENGINE=1 \
        -DWITH_INNOBASE_STORAGE_ENGINE=1 \
        -DWITH_MEMORY_STORAGE_ENGINE=1 \
        -DWITH_READLINE=1 \
        -DENABLED_LOCAL_INFILE=1 \
        -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
        -DMYSQL_TCP_PORT=3306 \
        -DWITH_SSL=yes \
        -DWITH_ZLIB=system
make && make install

配置MySQL

编译安装完成后,需要进行相关的配置,包括创建MySQL用户、初始化数据等。

示例命令:

groupadd mysql
useradd -r -g mysql mysql
cd /usr/local/mysql
chown -R mysql:mysql .
bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
chown -R root .
chown -R mysql:mysql data

启动MySQL

最后,启动mysql服务并设置启动。

示例命令:

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
chkconfig --add mysql
/etc/init.d/mysql start

示例1

假如你遇到了“ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)”错误,那你需要检查mysql.sock是否存在,如果存在需要重新设置软链接。

示例命令:

cd /var/lib/mysql
rm -rf mysql.sock
ln -s /tmp/mysql.sock mysql.sock

示例2

如果你需要设置MySQL的默认字符集为utf8,那么只需要更改/etc/my.cnf文件中的相关设置即可。

示例命令:

vi /etc/my.cnf

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_general_ci

:wq

以上就是64位CentOS7源码安装MySQL-5.6.35的完整攻略,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:64位CentOs7源码安装mysql-5.6.35过程分享 - Python技术站

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

相关文章

  • mysql 事务未提交导致死锁 Lock wait timeout exceeded; try restarting transaction 解决办法

    锁表问题提示:Lock wait timeout exceeded; try restarting transaction 解决锁表方法 查询数据库阻塞的进程SELECT * FROM information_schema.innodb_trx主要看箭头指向的这几个字段,如果有阻塞数据(不为0的就是阻塞的),找到后在根据下图这个字段:try_mysql_th…

    MySQL 2023年4月12日
    00
  • DBMS和RDBMS之间的区别

    DBMS和RDBMS是数据库管理系统的两种类型。DBMS是数据库管理系统的一种,创新性地推出了数据库系统,RDBMS又是DBMS派生出来一种。两者之间的区别在于数据存储方式、数据结构和服务运行规则等方面。 一、DBMS概述 DBMS(Database Management System)是数据库管理系统的缩写,是对人员、软件和硬件等一系列资源进行管理的系统。…

    database 2023年3月27日
    00
  • 深入理解ES7的async/await的用法

    深入理解ES7的async/await的用法 ES7的async/await是一种基于Promise的异步编程语法糖,它使异步代码的编写变得更加直观和易于理解。在使用async/await之前,我们需要了解以下内容: 1. async函数 async函数是异步函数的简写,返回的是一个Promise对象。可以通过在函数声明时添加async关键字来定义一个asy…

    database 2023年5月22日
    00
  • DBMS中E-R模型和关系模型的区别

    DBMS中E-R模型和关系模型是两种不同的数据模型,下面我将详细讲解它们之间的区别。 E-R模型 定义 E-R模型全称是实体-关系模型,是一种描述实体之间关系的模型。在E-R模型中,实体通常映射为表(或称为关系),而实体之间的关系则映射为表之间的关系。 实例说明 比如,我们有两个实体:学生和课程。学生和课程之间有一个“选修”关系,即一个学生可以选修多个课程,…

    database 2023年3月27日
    00
  • Oracle中的instr()函数应用及使用详解

    Oracle中的instr()函数应用及使用详解 概述 instr() 函数是 Oracle 数据库中用来查找一个字符串或字符在另一个字符串或字符中首次出现的位置的函数。该函数返回一个整数值,代表所查找的字符串或字符首次出现的位置在另一个字符串或字符中的索引位置,如果查找不到该字符串或字符则返回 0。 语法 instr(str1, str2 [, start…

    database 2023年5月21日
    00
  • SQL注入攻防入门详解 [图文并茂] 附示例下载

    SQL注入是一种针对数据库应用程序的攻击手段,通过注入恶意的SQL代码,攻击者可以访问、修改并删除数据库中的数据。为了保护网站免受SQL注入攻击,我们需要了解SQL注入攻击以及如何进行防御。本文将为大家介绍SQL注入攻防入门详解 [图文并茂] 附示例下载。 攻击方式 攻击者可以通过向网站的表单中输入恶意SQL代码来进行SQL注入攻击,常见的攻击方式包括: U…

    database 2023年5月21日
    00
  • MySQL临时表的使用方法详解

    MySQL临时表是MySQL中一种常见的临时存储结构,其使用方法如下: 创建临时表 CREATE TEMPORARY TABLE temp_table_name ( column1 datatype1, column2 datatype2, …); 插入数据 INSERT INTO temp_table_nameVALUES (value1, value…

    database 2023年5月22日
    00
  • 如何使用Python在MySQL中使用自增长键?

    在MySQL中,可以使用自增长键来自动为表中的每一行生成唯一的标识符。在Python中,可以使用MySQL连接来执行自增长键查询。以下是在Python中使用自增长键的完整攻略,包括自增长的基本语法、使用自增长键的示例以及如何在Python中使用自增长键。 自增长键的基本语法 在MySQL中,可以使用AUTO_INCREMENT关键字来指自增长键列。以下是创建…

    python 2023年5月12日
    00
合作推广
合作推广
分享本页
返回顶部