Mysql 编译安装部署

news2024/11/25 13:24:51

Mysql 编译安装部署

环境:

172.20.26.198(Centos7.6)   源码安装Mysql-5.7

大概步骤如下:

1、上传mysql-5.7.28.tar.gz 、boost_1_59_0.tar 到/usr/src 目录下

2、安装依赖

3、cmake

4、make && make install 

5、cp support-files/mysql.server my.cnf ,编辑my.cnf文件,添加数据目录及参数

6、创建/data/mysql57目录,并授权mysql可写权限,创建mysql用户

7、初始化 /usr/local/mysql57/bin/mysqld --initialize --user=mysql --

datadir=/data/mysql57 \

--basedir=/usr/local/mysql57/

8、cp support-files/mysql.server /etc/init.d/mysqld ,将启动脚本拷贝到/etc/init.d目录下,命名为mysqld,并检查脚本是否有执行权限

9、启动mysql 服务  /etc/init.d/mysqld57 start

10、配置环境变量

11、登录及管理数据库

具体操作如下:

1、上传mysql-5.7.28.tar.gz 、boost_1_59_0.tar  #到/usr/src 目录下,并解压

[root@localhost ~]# cd /usr/src/

[root@localhost src]# ll

总用量 0

drwxr-xr-x. 2 root root 6 4月  11 2018 debug

drwxr-xr-x. 2 root root 6 4月  11 2018 kernels

[root@localhost src]#rz             #上传mysql-5.7.28.tar.gz

Boost库是为C++语言标准库提供扩展的一些C++程序库的总称,由Boost社区组织开发、维护

[root@localhost src]#rz    #上传 boost_1_59_0.tar

[root@localhost src]# ll       #查看mysql-5.7.28.tar.gz 和 boost_1_59_0.tar已完成上传

[root@localhost src]# tar xf boost_1_59_0.tar.gz   #解压 boost_1_59_0.tar 文件

[root@localhost src]# mv boost_1_59_0 /usr/local/boost   #将解压后的boost_1_59_0

目录移动到/usr/local/boost

[root@localhost src]# tar xf mysql-5.7.28.tar.gz   #解压mysql-5.7.28.tar.gz

[root@localhost src]# cd mysql-5.7.28

[root@localhost mysql-5.7.28]# ll

2、安装依赖:

[root@localhost src]#yum install gcc ncurses-devel libaio bison gcc-c++ git

cmake ncurses-devel openssl openssl-devel -y

3、在/usr/src/mysql-5.7.28    #目录下,执行cmake 命令进行预编译

[root@localhost mysql-5.7.28]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql57 \

> -DMYSQL_UNIX_ADDR=/data/mysql57/mysql.sock \

> -DMYSQL_DATADIR=/data/mysql57 \

> -DSYSCONFDIR=/usr/local/mysql57 \

> -DMYSQL_USER=mysql \

> -DMYSQL_TCP_PORT=3307 \

> -DWITH_XTRADB_STORAGE_ENGINE=1 \

> -DWITH_INNOBASE_STORAGE_ENGINE=1 \

> -DWITH_PARTITION_STORAGE_ENGINE=1 \

> -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

> -DWITH_MYISAM_STORAGE_ENGINE=1 \

> -DWITH_READLINE=1 \

> -DENABLED_LOCAL_INFILE=1 \

> -DWITH_EXTRA_CHARSETS=1 \

> -DDEFAULT_CHARSET=utf8 \

> -DDEFAULT_COLLATION=utf8_general_ci \

> -DEXTRA_CHARSETS=all \

> -DWITH_BIG_TABLES=1 \

> -DWITH_DEBUG=0 \

> -DENABLE_DTRACE=0 \

> -DDOWNLOAD_BOOST=1 \

> -DWITH_BOOST=/usr/local/boost

4、make && make install  进行编译和安装,根据机器配置高低,决定所需时间长短,一般在半个小时左右

[root@localhost mysql-5.7.28]# make && make install     

成功完成make && make install  安装。

5、拷贝配置文件,cp support-files/mysql.server my.cnf ,编辑my.cnf文件,添加数据目录及参数

[root@localhost mysql57]# cp support-files/mysql.server my.cnf   添加以下数据到my.cnf中

[mysqld]

basedir=/usr/local/mysql57/

datadir=/data/mysql57/

port=3306

pid-file=/data/mysql57/mysql.pid

socket=/data/mysql57/mysql.sock

[mysqld_safe]

log-error=/data/mysql57/mysql.log

6、创建/data/mysql57目录,并授权mysql可写权限,创建mysql用户

[root@localhost mysql-5.7.28]# mkdir -p /data/mysql57

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

[root@localhost mysql57]# chown mysql . /data/mysql57/

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

[root@localhost mysql57]# ll /data/mysql57 -d        

drwxr-xr-x 2 mysql mysql 6 12月 26 15:26 /data/mysql57

7、初始化

进到/usr/local/mysql57目录下

[root@localhost mysql57]# /usr/local/mysql57/bin/mysqld --initialize --user=mysql --datadir=/data/mysql57 \ --basedir=/usr/local/mysql57/

因为初始化的时候选择的是“--initialize”,所以初始化完成后会生成一个随机密码,在最后一行,记得记录下来,如:AUCd3=fhb8f5,登录后修改密码,(如果设置为 --initialize-insecure,这样默认密码为空)

8、将启动脚本拷贝到/etc/init.d目录下,命名为mysqld

[root@localhost mysql57]# cp support-files/mysql.server /etc/init.d/mysqld  

[root@localhost mysql57]# ll /etc/init.d/mysqld    #检查脚本是否有执行权限

检查3306端口是否被占用

9、启动mysql 服务,检查3306端口

 [root@localhost mysql57]# /etc/init.d/mysqld start

10、配置环境变量

当前环境变量

[root@localhost ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

[root@localhost ~]#

[root@localhost ~]# echo “export PATH=/usr/local/mysql57/bin:$PATH” >> /etc/profile

   [root@localhost ~]# source /etc/profile    #保存后,使环境变量生效

11、登录及管理mysql

[root@localhost ~]# mysql -uroot -pAUCd3=fhb8f5

登录后修改mysql密码,源码安装带初始密码的,使用alter来改密码

alter user user() identified by "123456";   # user()指是当前用户

exit 退出,用新密码登录

注:密码为空或者已知当前密码:将密码改为123456

登录mysql后:mysql> set password for root@localhost = password('123456');

在shell终端执行:mysql -uroot -p -e "set password for root@localhost=password('123456');"

在shell终端用mysqladmin:mysqladmin -uroot -p123 password 123456

源码安装mysql 5.7版本完成。

mysql> show databases;  #查询数据库

创建jfedu数据库,设置字符集

mysql>create database jfedu charset=utf8;

如果用下面这条命令创建数据库,如果数据库已经存在就不会报错,否则会报错。

mysql>create database if not exists jfedu charset=utf8;

删除jfedu数据库

mysql> show databases;

如果使用下面这种方式删除数据库,如果数据库不存在就不会报错。

drop database if exists jfedu;

在jfedu数据库中创建t1表

mysql> use jfedu

Database changed

mysql> create table t1( id int(10) auto_increment primary key,

    -> name varchar(20), job varchar(10) );

Query OK, 0 rows affected (0.02 sec)

查看所有表

mysql> show tables;

查看所有表的详细信息:

mysql> show table status\G

查看表结构

mysql> desc t1;

查看创建表的sql语句

mysql> show create table t1\G

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1400275.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【React】组件性能优化、高阶组件

文章目录 React性能优化SCUReact更新机制keys的优化render函数被调用shouldComponentUpdatePureComponentshallowEqual方法高阶组件memo 获取DOM方式refs如何使用refref的类型 受控和非受控组件认识受控组件非受控组件 React的高阶组件认识高阶函数高阶组件的定义应用一 – pro…

Ubuntu20.4 Mono C# gtk 编程习练笔记(三)

Mono对gtk做了很努力的封装,即便如此仍然与System.Windows.Form中的控件操作方法有许多差异,这是gtk本身特性或称为特色决定的。下面是gtk常用控件在Mono C#中的一些用法。 Button控件 在工具箱中该控件的clicked信号双击后自动生成回调函数prototype&…

spawn_group | spawn_group_template | linked_respawn

字段介绍 spawn_group | spawn_group_template 用来记录与脚本事件或boss战斗有关的 creatures | gameobjects 的刷新数据linked_respawn 用来将 creatures | gameobjects 和 boss 联系起来,这样如果你杀死boss, creatures | gameobjects 在副本重置之前…

华为OD机试 - 查找一个有向网络的头节点和尾节点(Java JS Python C)

题目描述 给定一个有向图,图中可能包含有环,图使用二维矩阵表示,每一行的第一列表示起始节点,第二列表示终止节点,如 [0, 1] 表示从 0 到 1 的路径。 每个节点用正整数表示。 求这个数据的首节点与尾节点,题目给的用例会是一个首节点,但可能存在多个尾节点。同时图中…

万户OA-senddocument_import.jsp任意文件上传

0x01阅读须知 本文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考。本文章仅用于信息安全防御技术分享,因用于其他用途而产生不良后果,作者不承担任何法律责任&#…

systemverilog/verilog文件操作

1、Verilog文件操作 Verilog具有系统任务和功能,可以打开文件、将值输出到文件、从文件中读取值并加载到其他变量和关闭文件。 1.1 、Verilog文件操作 1.1.1、打开和关闭文件 module tb; // 声明一个变量存储 file handler integer fd; initial begin // 以写权限打开一个文…

翻译: Anaconda 与 miniconda的区别

Anaconda 和 miniconda 是广泛用于数据科学的软件发行版,用于简化包管理和部署。 1. 主要有两个区别: packages包数量: Anaconda 附带了 150 多个数据科学包,而 miniconda 只有少数几个。Interface接口:Anaconda 有…

VC++中使用OpenCV进行颜色检测

VC中使用OpenCV进行颜色检测 在VC中使用OpenCV进行颜色检测非常简单,首选读取一张彩色图像,并调用函数cvtColor(img, imgHSV, COLOR_BGR2HSV);函数将原图img转换成HSV图像imgHSV,再设置好HSV三个分量的上限和下限值,调用inRange函…

android使用相机 intent.resolveActivity returns null

问题 笔者使用java进行android开发,启动相机时 intent.resolveActivity returns null takePictureIntent.resolveActivity(getPackageManager()) null详细问题 笔者使用如下代码启动相机 // 启动相机SuppressLint("LongLogTag")private void dispatc…

计算机网络——第四层:传输层以及TCP UDP

1. 传输层的协议 1.1 TCP (传输控制协议) - rfc793 连接模式的传输。 保证按顺序传送数据包。 流量控制、错误检测和在数据包丢失时的重传。 用于需要可靠传输的应用,如网络(HTTP/HTTPS)、电子邮件(SMTP, IMAP, POP3)…

TensorRT部署-Windows环境配置

系列文章目录 文章目录 系列文章目录前言一、安装Visual Studio (2019)二、下载和安装nvidia显卡驱动三、下载CUDA四、下载安装cuDNN五、安装Anaconda六、TensorRT安装七、安装Opencv八、Cmake 配置总结 前言 TensorRT部署-Windows环境配置 一、安装Vis…

微服务不死 — 共享变量在策略引擎项目的落地详解

01 背景 1、共享变量的提出 前段时间,来自亚马逊 Prime Video 团队的一个案例研究在开发者社区中掀起了轩然大波。大体是这样一件事,作为一个流媒体平台,Prime Video每天都会向客户提供成千上万的直播流。为了确保客户无缝接收内容&#xff0…

一、用户管理中心——前端初始化

一、Ant Design Pro初始化 1.创建空文件夹 2.打开Ant Design Pro官网 3.打开终端进行初始化 在终端输入npm i ant-design/pro-cli -g 在终端输入pro create myapp 选择umi3 选择simple 项目创建成功后,在文件夹中出现myapp 4.安装依赖 使用vscode打开项目 …

jquery动态引入js和css

直接上代码吧&#xff0c;但是有时候这个方法会失败&#xff0c;js文件里面的方法不生效&#xff0c;原因还在找 // 动态引入cssvar cssFileUrl index.css;$("head").append("<link>");css $("head").children(":last");css.a…

【C++干货铺】C++11新特性——lambda表达式 | 包装器

个人主页点击直达&#xff1a;小白不是程序媛 C系列专栏&#xff1a;C干货铺 代码仓库&#xff1a;Gitee 目录 C98中的排序 lambda表达式 lambda表达式语法 表达式中的各部分说明 lambda表达式的使用 基本的使用 [var]值传递捕捉变量var ​编辑 [&var]引用传递捕…

AI教我学编程之C#类的实例化与访问修饰符

前言 在这篇文章中&#xff0c;我将带大家深入了解C#编程语言的核心概念&#xff0c;包括类的实例化、访问修饰符的应用&#xff0c;以及C#中不同数据类型的默认值。我会通过逐步分析和具体实例&#xff0c;详细解释如何在C#中正确创建和操作对象&#xff0c;并探讨如何通过访…

【实操】基于 GitHub Pages + Hexo 搭建个人博客

《开发工具系列》 【实操】基于 GitHub Pages Hexo 搭建个人博客 一、引言二、接入 Node.js2.1 下载并安装 Node.js2.2 环境变量配置 三、接入 Git3.1 下载并安装 Git3.2 环境变量配置 四、接入 Hexo4.1 安装 Hexo4.2 建站4.3 本地启动服务器 五、接入 GitHub Pages5.1 初识 G…

C#调用C动态链接库

前言 已经没写过博客好久了&#xff0c;上一篇还是1年半前写的LTE Gold序列学习笔记&#xff0c;因为工作是做通信协议的&#xff0c;然后因为大学时没好好学习专业课&#xff0c;现在理论还不扎实&#xff0c;不敢瞎写&#xff1b; 因为工作原因&#xff0c;经常需要分析一些字…

在k8s上部署ClickHouse

概述 clickhouse的容器化部署&#xff0c;已经有非常成熟的生态了。在一些互联网大厂也已经得到了大规模的应用。 clickhouse作为一款数据库&#xff0c;其容器化的主要难点在于它是有状态的服务&#xff0c;因此&#xff0c;我们需要配置PVC。 目前业界比较流行的部署方式有…

实时云渲染服务:流式传输 VR 和 AR 内容

想象一下无需专用的物理计算机&#xff0c;甚至无需实物连接&#xff0c;就能获得高质量的 AR/VR 体验是种什么样的体验&#xff1f; 过去&#xff0c;与 VR 交互需要专用的高端工作站&#xff0c;并且根据头显、壁挂式传感器和专用的物理空间。VR 中的复杂任务会突破传感器范…