Linux系统环境下MySQL数据库源代码的安装
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"
- 使用命令rpm –qa |grep gcc查看系统是否安装gcc
如未明确告知是否安装,还可通过命令which gcc查看是否安装:
如未安装,可直接使用命令yun install gcc安装
- 使用命令rpm –qa |grep gcc-c++查看系统是否安装gcc-c++
这里提示未安装gcc-c++,可使用命令yum install gcc-c++进行安装,然后在安装提醒中选择默认或输入y,点击enter确定安装,当出现一下内容时则表示安装成功:
- 使用相同流程进行其他工具的安装。
- 提前创建数据库目录、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
- MySQL源代码安装包获取:[root@localhost ~]#wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.37.tar.gz
下载完成后可在当前目录查看到安装包
- 使用命令tar –zxf mysql-5.6.37.tar.gz –C / usr/local解压安装包至目录/usr/local
- 使用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进行安装配置,时间较长,需耐心等待,当出现以下场景时,表示已经编译完成:
- 输入make进行编译,当进度为100%时表示编译完成:
- 输入make install进行最后安装,当出现以下场景时表示安装完成:
三、 MySQL数据库基本配置
- 数据库初始化,进入目录/usr/local/mysql/scripts/,输入命令./mysql_install_db --user=mysql --basedir=/usr/local/ mysql/ --datadir=/mydata/data/
- 切换至目录/usr/local/mysql/support-files/,复制MySQL服务启动脚本,修改相关权限
- 设置MySQL开机启动
[root@centos65 support-files]# chkconfig --add mysqld
[root@centos65 support-files]# chkconfig --list mysqld
- 优化MySQL命令的执行路径,在/etc/profile文件末尾添加如下两行:
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH
添加完成后保存退出编辑,执行命令source /etc/profile使配置生效
- 使用命令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
编辑完成保存退出
- 使用命令service mysqld restart启动MySQL服务
使用命令netstat -antp | grep mysqld可查看MySQL状态
四、 MySQL数据库的使用
- 第一次启动MySQL时需要进行root账户密码设置
输入命令/usr/local/mysql/bin/mysql_secure_installation,设置自定义密码
- 使用命令mysql -uroot –p,输入密码登录MySQL
Linux系统环境下MySQL数据库源代码的安装的更多相关文章
- Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 (需暂停服务的方式)
Linux系统下 MYSQL数据库中的数据库文件在本机内迁移 本机采用Ubuntu16.04系统,tar方式安装MySQL5.7.21 数据库安装文件夹为 /home/devil/mysql 现 ...
- 解决Linux系统下Mysql数据库中文显示成问号的问题
当我们将开发好的javaWEB项目部署到linux系统上,操作数据库的时候,会出现中文乱码问题,比如做插入操作,发现添加到数据库的数据中文出现论码,下面就将解决linux下mysql中文乱码问题! 打 ...
- 【数据库】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 ( ...
- Linux环境下MySQL数据库用SQL语句插入中文显示 “问号或者乱码 ” 问题解决!
问题: 在普通用户权限下执行 mysql -u root -p进入mysql数据库,中间步骤省略,插入数据:insert into 库名(属性)values('汉字'); 会出现如下提示: Quer ...
- Linux系统下MySQL数据库的备份和恢复
当我们MySQL数据库保存重要数据的时候,备份工作极为重要.本文介绍如何使用mysqldump备份和恢复数据,使用该方法,可以将数据库中的数据备份成一个文本文件,也可将备份好的数据库迁移到另一台的服务 ...
- 修改linux系统下mysql数据库登陆密码(密码忘记)
报错:Access denied for user 'root'@'localhost' (using password: NO) 解决方案: 1. 检查mysql服务是否启动,如果启动,关闭mysq ...
- linux环境下 mysql数据库忘记密码 处理办法UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;
整个修改过程大概3-10分钟(看个人操作),这个时间内mysql出于不需要密码就能登陆的状态,请设法保证系统安全 不罗嗦直接上步骤 1.vi /etc/my.cnf 在[mysqld]下,添加一句:s ...
- linux环境下 mysql数据库忘记密码 处理办法
整个修改过程大概3-10分钟(看个人操作),这个时间内mysql出于不需要密码就能登陆的状态,请设法保证系统安全 不罗嗦直接上步骤 1.vi /etc/my.cnf 在[mysqld]下,添加一句:s ...
- linux系统下mySQL数据库 备份方法和脚本
数据库备份1.创建个备份存储目录mkdir /root/backup/2.以下内容写到dbbackup.sh #!/bin/bash cd /data/db_backup/mysqldump -uad ...
随机推荐
- 21天学通C++(C++程序的组成部分)
C++程序被组织成类,而类由成员函数和成员变量组成. 本章学习: 1)C++程序的组成部分. 2)各部分如何协同工作. 3)函数及其用途. 4)基本输入输出操作. C++程序划分为两个部分,以#大头的 ...
- docker时区不正确的问题修改记
前一阵子有一台服务器,mysql的时间比北京时间晚了8个小时.我知道是时区的问题,但是不知道为什么弄成这样,宿主机没有问题,后来一看mysql的docker,时区是错的. mybatis-plus打印 ...
- MVC + EFCore 项目实战 - 数仓管理系统8 - 数据源管理下--数据源预览
上篇我们完成了数据源保存功能,并顺便看了保存后的数据源列表展示功能. 本篇我们开始开发预览功能,用户预览主要步骤: 1.点击数据源卡片预览按钮 2.查看数据源包含的表 3.点击表名,预览表中数据 ...
- Python字符串更新
Python字符串更新:截取字符串的某一部分 和 其他字符串进行拼接. 注:可以修改字符串的值,但修改的不是内存中的值,而是创建新的字符串. 1.使用字符串常量进行更新: # 使用字符串常量 strs ...
- Django学习路11_向数据库中添加 和 获取指定条件数据
在 views.py 中添加函数 向数据库中添加数据 def add_persons(request): for i in range(15): person = Person() flag = ra ...
- PDO::rollBack
PDO::rollBack — 回滚一个事务(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0) 说明 语法 bool PDO::rollBack ( void )高佣联 ...
- Python 为什么会有个奇怪的“...”对象?
本文出自"Python为什么"系列,请查看全部文章 在写上一篇<Python 为什么要有 pass 语句?>时,我想到一种特别的写法,很多人会把它当成 pass 语句的 ...
- 【HNOI2009】最小圈 题解(SPFA判负环+二分答案)
前言:模拟赛考试题,不会做,写了个爆搜滚蛋仍然保龄. --------------------- 题目链接 题目大意:给定一张有向图,求一个环,使得这个环的长度与这个环的大小(所含结点个数)的比值最小 ...
- js 排他思想案例
<!-- 排他思想 --> <button>按钮1</button> <button>按钮2</button> <button> ...
- 在Linux系统中安装Tomcat详细教程
首先在官网下载jdk和Tomcat的压缩包 这里下载jdk-8u241-linux-x64 .tar.gz 和apache-tomcat-8.5.50.tar.gz 然后解压jdk压缩包 tar –z ...