编译安装和二进制安装mysql
二进制安装mysql-5.6.46
mysql二进制安装,已经编译成二进制了,只需要做一些配置即可 [root@localhost ~]$ yum install autoconf libaio -y
[root@localhost ~]$ useradd -r -s /sbin/nologin -u 987 mysql #创建mysql用户
[root@localhost ~]$ mkdir /data/mysql
[root@localhost ~]$ chown mysql:mysql /data/mysql
[root@localhost ~]$ tar xvf mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz -C /usr/local #指定解压路径
[root@localhost ~]$ cd /usr/local/
[root@localhost local]$ ln -s mysql-5.6.46-linux-glibc2.12-x86_64 mysql #二进制安装是编译过的,所以解压的路径必须是编译的路径;默认编译路径是/usr/local/mysql,所以对mysql解压包创建个软链接叫mysql
[root@localhost local]$ chown -R root:root mysql/ #递归修改解压包的所有者和所属组
[root@localhost local]$ mkdir /etc/mysql
[root@localhost local]$ cp support-files/my-default.cnf /etc/mysql/my.cnf #复制mysql配置文件到指定目录;mysql配置文件可以放在多个目录;如:/etc/my.cnf、/etc/mysql/my.cnf等
[root@localhost local]$ vim /etc/mysql/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock [mysqld]
datadir = /data/mysql #指定数据库数据存放路径
port = 3306
socket = /tmp/mysql.sock
innodb_file_per_table = on #设置存储引擎
skip_name_resolve = on #关闭DNS反向解析
skip-external-locking
[root@localhost local]$ cd /usr/local/mysql
[root@localhost mysql]$ scripts/mysql_install_db --datadir=/data/mysql --user=mysql #执行生成初始数据库的脚本,指定数据库文件所有者为mysql
[root@localhost mysql]$ cp support-files/mysql.server /etc/init.d/mysqld #复制启动脚本到指定目录;服务的启动脚本里面一般有chkconfig和description两行标识
[root@localhost mysql]$ chkconfig --add mysqld #把mysqld脚本加到开机启动列表里
[root@localhost mysql]$ echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh #设置PATH路径
[root@localhost mysql]$ . /etc/profile.d/mysql.sh #立即生效
[root@localhost mysql]$ mkdir /var/log/mariadb
[root@localhost mysql]$ touch /var/log/mariadb/mariadb.log
[root@localhost mysql]$ service mysqld start
[root@localhost mysql]$ mysql_secure_installation #执行安全加固脚本
编译安装mysql-5.7.28
[root@localhost ~]$ yum install bison bison-devel zlib-devel libcurl-devel libarchive-devel boost-devel gcc gcc-c++ cmake ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel -y
[root@localhost ~]$ useradd -s /sbin/nologin -r -u 987 mysql
[root@localhost ~]$ mkdir /data/mysql #创建数据库数据存放目录
[root@localhost ~]$ chown mysql:mysql /data/mysql
[root@localhost ~]$ tar xf mysql-5.7.28.tar.gz -C /usr/local/src/
[root@localhost ~]$ tar xf boost_1_59_0.tar.gz -C /usr/local/src #编译安装mysql-5.7.28需要依赖boost_1_59_0这个包,需要提前下好
[root@localhost ~]$ cd /usr/local/src/mysql-5.7.28
[root@centos7 mysql-5.7.28]# cmake . \ #编译mysql没有configure脚本,需要使用cmake,指定参数,生成Makefile文件
-DCMAKE_INSTALL_PREFIX=/app/mysql \
-DMYSQL_DATADIR=/data/mysql/ \
-DSYSCONFDIR=/etc/ \
-DMYSQL_USER=mysql \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITHOUT_MROONGA_STORAGE_ENGINE=1 \
-DWITH_DEBUG=0 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=/usr/local/src/boost_1_59_0 #指定boost所在目录
[root@localhost mysql-5.7.28]$ make && make install
[root@localhost mysql-5.7.28]$ cd /app/mysql/
[root@localhost mysql]$ bin/mysqld --initialize --datadir=/data/mysql --user=mysql #生成初始数据库,在最下面会给一个初始的root口令,需要记下来
[root@localhost mysql]$ echo 'PATH=/app/mysql/bin:$PATH' > /etc/profile.d/mysql.sh #添加PATH路径
[root@localhost mysql]$ . /etc/profile.d/mysql.sh
[root@localhost mysql]$ cp /app/mysql/support-files/mysql.server /etc/init.d/mysqld #复制服务启动脚本
[root@localhost mysql]$ chkconfig --add mysqld #加入到开机启动列表里
[root@localhost mysql]$ vim /etc/my.cnf #编辑配置文件
[client]
port=3306
socket=/data/mysql/mysql.sock
[mysqld]
port=3306
skip-external-locking
datadir=/data/mysql
socket=/data/mysql/mysql.sock
[root@localhost mysql]$ service mysqld start
[root@localhost mysql]$ mysql_secure_installation -p*nr!%iFl%7>i #执行安全加固脚本,密码为上面生成初始化数据库系统随机分配的密码 如果在make编译时报错,排查完错误之后,需要先执行rm -f CMakeCache.txt操作,执行完之后再重新进行make编译
编译安装和二进制安装mysql的更多相关文章
- CentOS6.9安装MySQL(编译安装、二进制安装)
目录 CentOS6.9安装MySQL Linux安装MySQL的4种方式: 1. 二进制方式 特点:不需要安装,解压即可使用,不能定制功能 2. 编译安装 特点:可定制,安装慢 5.5之前: ./c ...
- centos7:mysql-5.7.23安装(二进制安装)
mysql有二进制码安装,和源码编译安装(mysql5.5使用cmake安装,mysql5.7需要安装boost依赖安装),因为boost依赖安装麻烦,所以用二进制码安装 MySql 5.7.23安装 ...
- rpm安装和二进制安装
rpm包安装 Tomcat RPM安装(先安装JDK + 再安装Tomcat) 1:升级系统自带的JDK(也可以使用oracle的JDK) yum install -y java-1.8.0-open ...
- mysql自动化安装脚本(二进制安装)
为了日后安装数据库方便,遂写了一个自动安装MySQL的脚本: 测试可以安装mariadb和MySQL-5.7.X 安装前配置好对应的my.cnf文件放在/tmp路径下 将启动脚本mysql3306放在 ...
- centos 安装mindoc 二进制安装
自建 文档管理系统或者说 wiki系统 mindoc官网: https://www.iminho.me/#%E6%BC%94%E7%A4%BA mindoc github页面:https://gith ...
- mysql二进制安装,升级,多实例部署
目标 理解线上部署考虑的因素 学会编译安装以及二进制安装mysql 学会升级mysql 学会多实例部署mysql数据库 学会合理部署mysql线上库 考虑因素: 版本选择,5.1,5.5还是5.6 ...
- (0.2.3)Mysql安装——二进制安装
Linux平台下二进制方式安装卸载mysql 本章节:二进制安装mysql 目录: 1.基于Linux平台的Mysql项目场景介绍 2.mysql数据库运行环境准备-最优配置 3.如何下载mysql数 ...
- Centos 二进制安装node.js
一.登录node的官网查看最新的稳定版,以及需要下载的Linux版本,你可以有多种Linux安装方式(源码安装,二进制安装等). 二.Node安装及配置 1.创建安装目录:创建目录node.js [r ...
- ELK 二进制安装并收集nginx日志
对于日志来说,最常见的需求就是收集.存储.查询.展示,开源社区正好有相对应的开源项目:logstash(收集).elasticsearch(存储+搜索).kibana(展示),我们将这三个组合起来的技 ...
随机推荐
- 阿里云OSS上传文件demo
1.安装ali-oss npm install ali-oss --save 2.demo 此例中使用到了ElementUI的el-upload组件.因为样式为自定义的 所以没有用element的自动 ...
- 哪个参数用来区分请求来自客户(手机)端还是服务器(PC)端?
cookie 和 session 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session. Cookie通过在客户端记录信息确定用 ...
- centos安装docker以及docker-compose
1.yum更新 # sudo yum update 2.如果安装docker旧版本,旧版本的卸载 # sudo yum remove docker docker-common docker-selin ...
- iOS-H5交互综合整理
1.WKWebView的使用 2.常见问题 2.1 iOS开发 WKWebView下js的alert(),confirm(),prompt()方法无法正常执行
- oracle密码修改保持和以前相同
需求:密码要求3个月变更一次,不管是不是业务密码,均需修改.对于非业务账号,直接修改即可,没有什么影响,SQL语句为: ALTER USER {user_name} IDENTIFIED BY {ne ...
- k8s pv无法删除问题
一般删除步骤为:先删pod再删pvc最后删pv 但是遇到pv始终处于“Terminating”状态,而且delete不掉.如下图: 解决方法: 直接删除k8s中的记录: kubectl patch p ...
- MySQL之Prepared Statements
1.概述 prepared statement在MySQL4.1中引进并且增加了一些新的命令: COM_STMT_PREPARE COM_STMT_EXECUTE COM_STMT_CLOSE COM ...
- h5中hash的用法实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 利用 Create React Native App 创建 React Native 应用
$ npm i -g create-react-native-app $ create-react-native-app my-project $ cd my-project $ npm start
- 基于Java+Selenium的WebUI自动化测试框架(十四)-----使用TestNG的Sample
到目前为止,我们所写的东西,都是集中在如何使用Selenium和Java来定位和读取元素.那么,到底如何具体开展测试,如何实现参数化,如何实现判定呢?下面,我们来看看Java应用程序的测试框架吧. 当 ...