Linux系统环境下MySQL数据库源代码的安装

基本环境:CentOS Linux release 7.8.2003 (Core)、MySQL5.6

一、      安装环境准备

若要在Linux系统下进行Mysql源码安装,需要检查系统是否具备编译源码的工具和库:gcc、 gcc-c++、cmake,为方便后期MySQL使用,还可安装以下工具:、ncurses-devel、perl、"Development tools" "Desktop Platform Development" "Server Platform Development"

  1. 使用命令rpm –qa |grep gcc查看系统是否安装gcc

如未明确告知是否安装,还可通过命令which gcc查看是否安装:

如未安装,可直接使用命令yun install gcc安装

  1. 使用命令rpm –qa |grep gcc-c++查看系统是否安装gcc-c++

这里提示未安装gcc-c++,可使用命令yum install gcc-c++进行安装,然后在安装提醒中选择默认或输入y,点击enter确定安装,当出现一下内容时则表示安装成功:

  1. 使用相同流程进行其他工具的安装。
  2. 提前创建数据库目录、mysql用户,并修改数据目录的属主

[root@localhost ~]# mkdir -p /mydata/data

[root@localhost /]# ls -ld mydata/

drwxr-xr-x. 3 root root 17 Jun 19 16:35 mydata/

[root@localhost ~]# useradd -s /sbin/nologin mysql

[root@localhost ~]# ls -l /sbin/nologin

-rwxr-xr-x. 1 root root 7176 Apr  1 12:51 /sbin/nologin

[root@localhost ~]# chown -R mysql.mysql /mydata/data/

[root@localhost ~]# ls -ld /mydata/data

drwxr-xr-x. 2 mysql mysql 6 Jun 19 15:56 /mydata/data

二、      安装MySQL

  1. MySQL源代码安装包获取:[root@localhost ~]#wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.37.tar.gz

下载完成后可在当前目录查看到安装包

  1. 使用命令tar –zxf mysql-5.6.37.tar.gz –C / usr/local解压安装包至目录/usr/local
  1. 使用cmake配置安装,进入目录/usr/local/ mysql-5.6.37输入命令cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data/ -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci进行安装配置,时间较长,需耐心等待,当出现以下场景时,表示已经编译完成:
  1. 输入make进行编译,当进度为100%时表示编译完成:
  1. 输入make install进行最后安装,当出现以下场景时表示安装完成:

三、      MySQL数据库基本配置

  1. 数据库初始化,进入目录/usr/local/mysql/scripts/,输入命令./mysql_install_db --user=mysql --basedir=/usr/local/ mysql/ --datadir=/mydata/data/
  1. 切换至目录/usr/local/mysql/support-files/,复制MySQL服务启动脚本,修改相关权限
  1. 设置MySQL开机启动

[root@centos65 support-files]# chkconfig --add mysqld

[root@centos65 support-files]# chkconfig --list mysqld

  1. 优化MySQL命令的执行路径,在/etc/profile文件末尾添加如下两行:

PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH

export PATH

添加完成后保存退出编辑,执行命令source /etc/profile使配置生效

  1. 使用命令cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf复制MySQL配置文件

使用命令vi /etc/my.cnf编辑配置文件,在文件末尾添加以下配置:

innodb_file_per_table = 1

datadir = /mydata/data

port = 3306

user = mysql

server_id = 1

socket = /tmp/mysql.sock

编辑完成保存退出

  1. 使用命令service mysqld restart启动MySQL服务
    使用命令netstat -antp | grep mysqld可查看MySQL状态

四、      MySQL数据库的使用

  1. 第一次启动MySQL时需要进行root账户密码设置

输入命令/usr/local/mysql/bin/mysql_secure_installation,设置自定义密码

  1. 使用命令mysql -uroot –p,输入密码登录MySQL

Linux系统环境下MySQL数据库源代码的安装的更多相关文章

  1. Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 (需暂停服务的方式)

    Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 本机采用Ubuntu16.04系统,tar方式安装MySQL5.7.21 数据库安装文件夹为    /home/devil/mysql 现 ...

  2. 解决Linux系统下Mysql数据库中文显示成问号的问题

    当我们将开发好的javaWEB项目部署到linux系统上,操作数据库的时候,会出现中文乱码问题,比如做插入操作,发现添加到数据库的数据中文出现论码,下面就将解决linux下mysql中文乱码问题! 打 ...

  3. 【数据库】4.0 MySQL入门学习(四)——linux系统环境下MySQL安装

    1.0 我的操作系统是CentOS Linux release 7.6.1810  (Core) 系统详细信息如下: Linux version 3.10.0-957.1.3.el7.x86_64 ( ...

  4. Linux环境下MySQL数据库用SQL语句插入中文显示 “问号或者乱码 ” 问题解决!

    问题: 在普通用户权限下执行 mysql -u root -p进入mysql数据库,中间步骤省略,插入数据:insert into 库名(属性)values('汉字'); 会出现如下提示:  Quer ...

  5. Linux系统下MySQL数据库的备份和恢复

    当我们MySQL数据库保存重要数据的时候,备份工作极为重要.本文介绍如何使用mysqldump备份和恢复数据,使用该方法,可以将数据库中的数据备份成一个文本文件,也可将备份好的数据库迁移到另一台的服务 ...

  6. 修改linux系统下mysql数据库登陆密码(密码忘记)

    报错:Access denied for user 'root'@'localhost' (using password: NO) 解决方案: 1. 检查mysql服务是否启动,如果启动,关闭mysq ...

  7. linux环境下 mysql数据库忘记密码 处理办法UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;

    整个修改过程大概3-10分钟(看个人操作),这个时间内mysql出于不需要密码就能登陆的状态,请设法保证系统安全 不罗嗦直接上步骤 1.vi /etc/my.cnf 在[mysqld]下,添加一句:s ...

  8. linux环境下 mysql数据库忘记密码 处理办法

    整个修改过程大概3-10分钟(看个人操作),这个时间内mysql出于不需要密码就能登陆的状态,请设法保证系统安全 不罗嗦直接上步骤 1.vi /etc/my.cnf 在[mysqld]下,添加一句:s ...

  9. linux系统下mySQL数据库 备份方法和脚本

    数据库备份1.创建个备份存储目录mkdir /root/backup/2.以下内容写到dbbackup.sh #!/bin/bash cd /data/db_backup/mysqldump -uad ...

随机推荐

  1. BUUCTF-web ikun(Python 反序列化)

    正如本题所说,脑洞有点大.考点还很多,不过最核心的还是python的pickle反序列化漏洞 题目中暗示了要6级号,找了很多页都没看到,于是写了脚本 在第180页有6级号,但是价格出奇的高,明显买不起 ...

  2. The option-critic architecture

    Abstract 时间抽象是强化学习中扩大学习和规划的关键.虽然计划与时间扩展的行动是众所周知的,但从数据中自主地创建这样的抽象仍然具有挑战性.我们在option框架内解决这个问题[Sutton,Pr ...

  3. Andriod开发---《横竖屏切换时 Activity的生命周期的总结》

    横屏切换竖屏Activity的生命周期详解,下面分析一下切换时具体的生命周期: 1.新建一个Activity,并把各个生命周期打印出来 2.运行Activity,得到如下信息 onCreate--&g ...

  4. myBatis源码解析-日志篇(1)

    上半年在进行知识储备,下半年争取写一点好的博客来记录自己源码之路.在学习源码的路上也掌握了一些设计模式,可所谓一举两得.本次打算写Mybatis的源码解读. 准备工作 1. 下载mybatis源码 下 ...

  5. 《Python Web开发学习实录》高清PDF版|百度网盘免费下载|Python Web开发学习实录

    <Python Web开发学习实录>高清PDF版|百度网盘免费下载|Python Web开发学习实录 提取码:9w3o 内容简介 Python是目前流行的动态脚本语言之一. 李勇,本书共1 ...

  6. Python3.7安装pyaudio库报错问题及修复

    本人今天在使用python编写语音相关项目是需要引用pyaudio库,结果发现引用失败,刚开始报错内容如下: 说让我升级pip,然后我就按照提示升级了pip,然后又再次尝试安装pyaudio库,然后还 ...

  7. PHP date_get_last_errors() 函数

    ------------恢复内容开始------------ 实例 返回解析日期字符串时的警告和错误: <?phpdate_create("gyuiyiuyui%&&/ ...

  8. Java 将数据写入全路径下的指定文件

    package com.freud.algorithm.other; import java.io.File; import java.io.FileOutputStream; public clas ...

  9. MySQL的undo/redo日志和binlog日志,以及2PC

    发现自己的知识点有点散,今天就把它们连接起来,好好总结一下. 一.undo log.redo log.binlog的定义和对比   定义和作用                       所在架构层级 ...

  10. mysqld_multi多实例部署

    mysql多实例部署 目录 mysql多实例部署 下载软件 配置用户和组并解压二进制程序至/usr/local下 创建实例数据存放的目录 初始化各实例 配置配置文件/etc/my.cnf 启动各实例 ...