CentOS6.9安装MySQL(编译安装、二进制安装)
CentOS6.9安装MySQL
Linux安装MySQL的4种方式:
1. 二进制方式
特点:不需要安装,解压即可使用,不能定制功能
2. 编译安装
特点:可定制,安装慢
5.5之前: ./configure make make install
5.6之后: cmake gmake
3. rpm,yum
特点:安装方便,安装速度快,无法定制
4. 先编译,然后制作rpm,制作yum源,然后yum安装
特点:简单,速度快,可定制,比较复杂,制作时间长
企业选择:
中小企业:以上方式都可以,运维偏向编译安装,dba偏向选择二进制
大型企业:选择第四种
二进制安装步骤:
环境准备
Linux系统,这里以CentOS6.9作为演示
mysql安装包:mysql-5.7.19-linux-glibc2.5-x86_64.tar.gz
安装
解压mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz,并拷贝到/application/mysql-5.7.24目录下
mkdir -p /tools
mkdir -p /application
cd /tools
tar -zxf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.24-linux-glibc2.12-x86_64 /application/mysql-5.7.24 ln -s /application/mysql-5.7.24 /application/mysql5.7
添加mysql 用户
useradd -s /sbin/nologin -M mysql # 提前创建安装目录
mkdir -p /application/mysql-5.7.24
修改mysql工作目录权限
chown -R mysql.mysql /application/mysql-5.7.24 /application/mysql5.7
安装mysql
cd /application/mysql5.7 ./bin/mysqld --initialize --user=mysql --basedir=/application/mysql5.7 --datadir=/application/mysql5.7/data # 执行完上诉命令,输出的信息中存在mysql的登录密码。(最后一行的最后一串字符就是密码)
将mysql启动命令复制到系统文件中
cp /application/mysql5.7/support-files/mysql.server /etc/init.d/mysqld
将mysql的启动文件路径加入到系统环境变量中
echo "PATH=/application/mysql5.7/bin:$PATH" >> /etc/profile . /etc/profile # 让/etc/profile文件生效
配置mysql配置文件
# 编辑配置文件
vim /etc/my.cnf ************************以下为配置,直接复制粘贴***************************
[mysql]
socket=/application/mysql5.7/data/mysql.sock [mysqld]
port=3306
socket=/application/mysql5.7/data/mysql.sock
basedir=/application/mysql5.7
datadir=/application/mysql5.7/data
启动mysql服务
/etc/init.d/mysqld start
登录mysql服务
mysql -u root -p密码 # 密码是第4步中的内容
最后登录成功的界面
修改密码
alter user user() identified by "新密码";
到这里二进制安装就结束了
编译安装步骤:
环境准备
Linux系统,这里以CentOS6.9作为演示
mysql安装包:mysql-5.6.37.tar.gz(后面步骤中有详细的地址)
安装
安装依赖包
yum install -y ncurses-devel libaio-devel gcc gcc-c++
安装cmake,编译器
yum install cmake -y
创建用户,供运行mysql使用
useradd -s /sbin/nologin -M mysql # 提前创建安装目录
mkdir -p /application/mysql-5.6.36
下载安装包
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.37.tar.gz
解包
tar -zxvf mysql-5.6.37.tar.gz # 进入对应的目录中
cd mysql-5.6-37
编译
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.36 \
-DMYSQL_DATADIR=/application/mysql-5.6.36/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.36/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0
make && make install *******************************参数含义*****************************
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.37 \ # 指定安装目录,类似window选择目录安装软件,默认最后一级目录系统自动创建。
-DMYSQL_DATADIR=/application/mysql-5.6.37/data \ # 指定数据目录,一般都是跟随安装下
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.37/tmp/mysql.sock \ # 指定sock文件位置
-DDEFAULT_CHARSET=utf8 \ # 字符编码
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ # 启用该引擎的支持。语法为:-DWITH_<ENGINE>_STORAGE_ENGINE=1 禁用语法为:-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1 \ # 同上
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ # 同上
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ # 同上
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0
make && make install # make 开始编译,make install 安装 **********************常见的编译参数*************************
-DMYSQL_USER=mysql # 设置mysql服务的用户,必须真实存在
-DMYSQL_TCP_PORT=3306 # 设置mysql服务的端口,默认为3306
更多编译请参考官方文档:https://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html#option_cmake_storage_engine_options
创建软连接
ln -s /application/mysql-5.6.37 /application/mysql5.6
修改安装目录的权限
chmod +w /application/mysql-5.6.37
chmod +w /application/mysql5.6 chown -R mysql:mysql /application/mysql5.6
chown -R mysql:mysql /application/mysql-5.6.37
复制配置文件到Linux系统目录下,并在/etc/my.cnf文件中添加如下内容
cd /application/mysql-5.6.37 cp -f support-files/my-default.cnf /etc/my.cnf # 在/etc/my.cnf中添加如下内容:
-----------------------------/etc/my.cnf内容------------------------
[mysql]
socket=/application/mysql5.6/data/mysql.sock [mysqld]
port=3306
socket=/application/mysql5.6/data/mysql.sock
basedir=/application/mysql5.6
datadir=/application/mysql5.6/data
-------------------------------------------------------------------
执行初始化配置脚本,创建系统自带的数据库和表,注意配置文件的路径
cd /application/mysql5.6/scripts/ ./mysql_install_db --defaults-file=/etc/my.cnf --basedir=/application/mysql5.6 --datadir=/application/mysql5.6/data --user=mysql # --defaults-file 指定mysql的配置文件
# --basedir 指定mysql工作目录
# --datadir 指定mysql数据目录
# -user 指定mysql软件运行的用户
将mysql启动文件拷贝到系统目录下(类似windows把软件的启动程序,拷贝到了桌面,有利于快速启动)
cd /application/mysql5.6 cp support-files/mysql.server /etc/init.d/mysqld
授权mysqld文件执行权限
chmod +x /etc/init.d/mysqld
设置开机自启动(根据自身爱好进行设置)
chkconfig mysqld on
启动msyql服务
/etc/init.d/mysqld start
把mysql服务的路径添加到环境变量中
echo "PATH=/application/mysql5.6/bin:$PATH" >> /etc/profile . /etc/profile # 让/etc/profile文件生效
设置mysql登录的密码
/application/mysql5.6/bin/mysqladmin -u root password '新密码' -S /application/mysql5.6/data/mysql.sock
登录mysql服务
mysql -uroot -p新密码 # 注意-p后面直接接密码,不要空格
登录成功后的界面如图
到这里mysql就安装完毕了,期间碰到了一些坑,好在全部都解决了。
CentOS6.9安装MySQL(编译安装、二进制安装)的更多相关文章
- Linux中MySQL5.6编译安装与MySQL5.7二进制安装步骤
首先,介绍一下MySQL的几种安装方式 1.RPM.Yum 的安装方式:安装方便.安装速度快,无法定制 2.二进制:不需要安装,解压即可使用,不能定制功能 3.编译安装:可定制,安装慢. 编译安装中需 ...
- 20190418 CentOS7实用技能综合:系统安装 + WinScp客户端连接 + 防火墙端口号iptables + Nginx编译安装 + MySQL编译安装 + Redis编译安装 + MongoDB编译安装 + ActiveMQ/RocketMQ/RabbitMQ编译安装 + ...各类常用生产环境软件的编译安装
系统安装 + WinScp客户端连接 + 防火墙端口号iptables + Nginx编译安装 + MySQL编译安装 + Redis编译安装 + MongoDB编译安装 + ActiveMQ/Roc ...
- CentOS 6.9上安装Mysql 5.7.18 安装
CentOS 6.9上安装Mysql 5.7.18 安装 下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-g ...
- MySQL数据库的二进制安装、源码编译和基础入门操作
一.MySQL安装 (1)安装方式: 1 .程序包yum安装 优点:安装快,简单 缺点:定死了各个文件的地方,需要修改里边的相关配置文件,很麻烦 2 .二进制格式的程序包:展开至特定路径,并经过简单配 ...
- Mysql数据库的二进制安装和基础入门操作
前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...
- ubuntu上安装mysql 编译安装
为什么要折腾?首先说明的是ubuntu上安装mysql等软件是非常容易简单的,其简单的程度盖过windows上的安装,一句sudo apt-get install就可以搞定.如果想用最简便的方法安装m ...
- 安装mysql ndb cluster二进制版本在linux上
Installing an NDB Cluster Binary Release on Linux (官方安装手册)手册地址:https://dev.mysql.com/doc/refman/5.7/ ...
- liunx mysql 5.7 二进制安装
liunx 5.6版本 本人安装次数不下20次,基本上按照正常的操作流程不会出现什么问题,一切顺利. 今天开发新项目需要按照mysql 5.7 版本.mysql 5.7版本和mysql 5.6版本变化 ...
- 在centos安装MySql的三种安装方法
一.二进制安装MySql 1. 下载Mysql安装包 wget https://downloads.mysql.com/archives/get/file/mysql-5.6.40-linux-gli ...
随机推荐
- 怎么拆分一个Excel工作簿中的多个工作表?
打开需要编辑的Excel文档.如图所示,工作簿下方有很多工作表.现在需要将这些工作表单独拆分开成一个个工作簿. 右键任意一个工作表标签,在弹出的下拉列表中选择查看代码.即弹出代码窗口.如下图所示. ...
- JS知识点查漏补缺
知识点1: 判断语句中遇到NaN即为 False 只需要注意遇到False即为False即可 使用join(),toString()皆可以将数组转化为字符串 二者的相同点在于都可以转化数组为字符串 二 ...
- js 判断回文字符串
回文字符串:字符串从前往后读和从后往前读字符顺序是一致的. 判断一个字符串是不是回文字符串 function isPalindrome(str) { var str1 = str.split(''). ...
- Vue-状态管理Vuex的使用
vuex是状态管理,是为了解决跨组件之间数据共享问题的,一个组件的数据变化会映射到使用这个数据的其他组件当中.如果刷新页面,之前存储的vuex数据全部都会被初始化掉.以一个全局单例模式管理当应用遇到多 ...
- docker-install-v0.1-alpha
Written by Zak Zhu docker-install-v0.1-alpha/ ├── inventory ├── roles │ └── docker │ ├── defaults │
- 浅谈python中__str__和__repr__的区别
很多时候我们在创建一个类的时候,在终端打印类或者查看的时候一般都不会得到一个太满意的结果 class T: def __init__(self): self.color="red" ...
- Unity2018编辑器脚本趟坑记录
解除预制体问题:(这个例子是解除游戏中的Canvas与Asset中的预制体的关系) if( PrefabUtility.IsAnyPrefabInstanceRoot(GameObject.Find( ...
- 【代码学习】PYTHON 文件I/O
一.文件的打开和关闭 open(文件名,访问模式) cloese() 模式 描述 r 以只读方式打开文件.文件的指针将会放在文件的开头.这是默认模式. rb 以二进制格式打开一个文件用于只读.文件指针 ...
- 2019年7月22日A股科创板开板首日行情思考
2019年7月22日A股科创板开板首日行情思考 原因:2019科创板开板交易 盘面:科创板交易活跃,首批上市25只股票大涨,最高达5倍涨幅:主板交投低迷,量能萎缩,大部分股票下跌. 操作:加仓 西安银 ...
- 在Visual Studio 2017中,.NET(C#)通过Oracle.ManagedDataAccess来连接Oracle数据库
C#如何通过Oracle.ManagedDataAccess来连接Oracle数据库 1.先创建一个项目,鼠标右击项目中的引用,再点击管理NuGet程序包(也可以先下载dll文件,再选添加引用),在搜 ...