安装篇五:安装MySQL(5.6.38版本)
#1、MySQL安装
#1、准备环境
# No1:关闭:(iptables)selinux
# No2:下载好安装包(这里使用 mysql-5.6.38.tar.gz 包安装)
# No3:安装依赖包
[root@TEST ~]# yum install -y ncurses-devel libaio-devel
# No4:安装cmake软件 [ 说明:MySQL5.5版本以后使用编译安装需要安装 cmake ]
[root@TEST ~]# yum install cmake gcc-c++ –y
# No5:创建MySQL管理的虚拟用户
[root@TEST ~]# useradd -s /sbin/nologin -M mysql
[root@TEST ~]# id mysql
# No6:创建tools目录
[root@TEST ~]# cd /server/tools/
#2、导入MySQL安装包并解压
#2、导入MySQL安装包
[root@TEST ~]# cd /server/tools/
[root@TEST tools]# tar xf mysql-5.6.38.tar.gz
[root@TEST tools]# cd mysql-5.6.38 ###进入解压之后的目录
#3、configure配置、编译、安装
#3、configure配置、编译、安装
[root@TEST tools]# cd mysql-5.6.38
[root@TEST mysql-5.6.38]#
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38 \
-DMYSQL_DATADIR=/application/mysql-5.6.38/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/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
[root@TEST mysql-5.6.38]# echo $? <—— 返回值为0,则执行下一步
[root@TEST mysql-5.6.38]# make
[root@TEST mysql-5.6.38]# echo $? <—— 返回值为0,则执行下一步
[root@TEST mysql-5.6.38]# make install
[root@TEST mysql-5.6.38]# echo $? <—— 返回值为0,则执行下一步
*****************************************************************************
## 补充说明1:
cmake 执行完了之后,先使用 echo $?查看返回值是否是0;
如果是0的话再执行下面的make 和make install
## 补充说明2:
报错说明:如果cmake报错,大部分原因是由于关键的开发包组没有安装
解决方法: 1、安装包组:yum groupinstall XXX
2、解压文件夹删除,再次重新解压,重新cmake即可
## 补充说明3:
cmake干了什么?
1、做了些预配置
2、影响了编译后的程序(编译过程会将cmake指定的配置信息硬编码到程序文件中)
Mysqld、mysql、mysql_install_db、mysqldump、mysqladmin、mysql_safe等。
*****************************************************************************
#4、创建软连接
[root@TEST mysql-5.6.38]# ln -s /application/mysql-5.6.38/ /application/mysql
#5、移除/etc/my.conf文件
[root@TEST mysql-5.6.38]# rm -rf /etc/my.cnf*
[root@TEST mysql-5.6.38]# cp /application/mysql/support-files/my*.cnf /etc/my.cnf
#6、初始化数据
[root@TEST mysql-5.6.38]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql
#7、修改软件路径归属
[root@TEST mysql-5.6.38]# chown -R mysql.mysql /application/mysql/
#8、启动脚本和开机自启动设置
# 拷贝启动脚本到sys-v模式目录
[root@TEST mysql-5.6.38]# cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
# 修改权限
[root@TEST mysql-5.6.38]# chmod 700 /etc/init.d/mysqld
# 设置开机自启动
[root@TEST mysql-5.6.38]# chkconfig mysqld on
[root@TEST mysql-5.6.38]# chkconfig --list mysqld
#9、启动数据库
[root@TEST mysql-5.6.38]# /etc/init.d/mysqld start
# 查看数据库端进程信息
[root@TEST mysql-5.6.38]# ps -ef|grep mysql
# 查看数据库端口号
[root@TEST mysql-5.6.38]# netstat -lntup|grep mysql
tcp 0 0 :::3306 :::* LISTEN 32340/mysqld
*************************************************************
启动可能报错:
# 可能报错(一)
Starting MySQL.180402 00:55:13 mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists.ERROR! The server quit without updating PID file (/var/lib/mysql/db02.pid).
# 那么你可以查看以下/etc/my.cnf是否是之前安装mysql时产生的文件,把它移动到/tmp目录下,再次启动mysql尝试
/etc/init.d/mysqld start
# 可能报错(二)
Starting MySQL.Logging to '/application/mysql-5.6.36/data/db02.err'.
180402 00:56:42 mysqld_safe Directory '/application/mysql-5.6.36/tmp' for UNIX socket file don't exists.
ERROR! The server quit without updating PID file (/application/mysql-5.6.36/data/db02.pid).
# 注:此时数据库启动会提示,找不到xx/tmp/mysql.sock,原因是5.6.36版本不会自动创建tmp目录
解决办法:
# 创建目录tmp
[root@TEST mysql-5.6.38]# mkdir /application/mysql/tmp
# 授权
[root@TEST mysql-5.6.38]# chown -R mysql.mysql /application/mysql/
# 再次启动
[root@TEST mysql-5.6.38]# /etc/init.d/mysqld start # 启动成功
#10、添加环境变量
[root@TEST mysql-5.6.38]# echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
[root@TEST mysql-5.6.38]# tail -1 /etc/profile
[root@TEST mysql-5.6.38]# source /etc/profile
[root@TEST mysql-5.6.38]# echo $PATH
#11、删除数据库里的无效库、用户
①、修改初始密码
# 说明:刚安装的数据库没有初始密码
[root@TEST mysql-5.6.38]# mysqladmin -uroot -p password 123456
Enter password: <————注意:刚安装的数据库是没有密码的,这里密码直接enter回车
Warning: Using a password on the command line interface can be insecure.
# 登录MySQL:
mysql -uroot -p123456
mysql -uroot -p
②、清理无效用户
mysql> select user,host from mysql.user;
mysql> drop user ''@'localhost';
mysql> drop user 'root'@'::1';
mysql> drop user root@'127.0.0.1';
mysql> drop user ''@'test';
mysql> drop user 'root'@'test';
mysql> select user,host from mysql.user;
| root | localhost |
1 row in set (0.00 sec)
③、清理无效数据库
mysql> show databases;
mysql> drop database test;
mysql> show databases;
| information_schema |
| mysql |
| performance_schema |
3 rows in set (0.01 sec)
安装篇五:安装MySQL(5.6.38版本)的更多相关文章
- CentOS安装gcc clang git mysql等软件高版本福利
最近同事需要在单位提供的开发机上临时安装gcc等软件,时间紧迫,因此向其推荐安装福利devtoolset. 感谢devtoolset,使得CentOS软件安装无比的快捷,卸载也是无与伦比的简单. gc ...
- SystemTap 学习笔记 - 安装篇
https://segmentfault.com/a/1190000000671438 在安装前,需要知道下自己的系统环境,我的环境如下: uname -r 2.6.18-308.el5 Linux ...
- centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课
centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节 ...
- LNMP平台搭建---MySQL安装篇
在前两篇中,安装了一个基本的Web服务器,但是只能提供静态网页查看,要做成动态网站,就必须要数据库或其他编程语言支持了,这里先介绍MySQL数据库的安装. MySQL是一个开源的数据库,在互联网行业应 ...
- 数据库的硬迁移和mysql 5.5.38源码安装
场景:一台服务器出现了故障,需要把数据库迁移到另一台服务器上,由于数据效大,直接压缩数库的数据目录(在数据库DOWN的情况下)数据库版本mysql 5.5.38安装方式:源码安装思路:在另一台服务器上 ...
- mysql 5.6.38 数据库编译安装
一.系统环境: # cat /etc/redhat-release CentOS release 6.9 (Final) 二.mysql 编译安装: 1.安装依赖包: yum install -y n ...
- MySQL 5.6.38安装
#1.安装说明 本套安装方式适用于:CentOS6.X 或CentOS7.X系列的OS安装,此方法适用于MySQL5.6.xx版本的安装,如果是5.7版本的话不适合该配置. #2.准备安装环境 # N ...
- Centos下堡垒机Jumpserver V3.0环境部署完整记录(1)-安装篇
由于来源身份不明.越权操作.密码泄露.数据被窃.违规操作等因素都可能会使运营的业务系统面临严重威胁,一旦发生事故,如果不能快速定位事故原因,运维人员往往就会背黑锅.几种常见的运维人员背黑锅场景:1)由 ...
- mysql 5.7以上版本安装配置方法图文教程(mysql 5.7.12\mysql 5.7.13\mysql 5.7.14)(转)
http://www.jb51.net/article/90302.htm ******************************* 这篇文章主要为大家分享了MySQL 5.7以上缩版本安装配置 ...
随机推荐
- P2592 [ZJOI2008]生日聚会
容易发现已经结束掉的一个子串只要合法就对后面没有影响,所以可以令 \(f_{i,j,p,q}\) 表示前 \(i+j\) 个人有 \(i\) 个男孩,\(j\) 个女孩,所有后缀中男孩最多比女孩多 \ ...
- 使用@RequestBody注解获取Ajax提交的json数据
最近在学习有关springMVC的知识,今天学习如何使用@RequestBody注解来获取Ajax提交的json数据内容. Ajax部分代码如下: 1 $(function(){ 2 $(" ...
- 腾讯云 CHDFS — 云端大数据存算分离的基石
随着网络性能提升,云端计算架构逐步向存算分离转变,AWS Aurora 率先在数据库领域实现了这个转变,大数据计算领域也迅速朝此方向演化. 存算分离在云端有明显优势,不但可以充分发挥弹性计算的灵活,同 ...
- Cassandra与职业发展 | 阿里云栾小凡 × 蔚来汽车张旭东 × 网龙阙乃祯
# 活动精彩实录 | Cassandra与职业发展 点击此处观看完整活动录像 大家好,我叫邓为,我目前在DataStax担任领航架构师.我在DataStax工作了7年多的时间,也有7年多的Cassa ...
- vue中全局/按需引用element,样式都不生效
简直是天坑啊,这个问题困扰了我一个晚上加今天一天,心里无数草泥马奔腾 被要求使用vue1.0+elementUI做一个后台管理项目,结果无论怎么操作elementUI,页面中都不显示css样式 谷歌百 ...
- vue上传视屏或者图片到七牛云
首先下载七牛云的JavaScript-SDK npm install qiniu-js 下载完成JavaScript-SDK以后就可以上传图片信息了 <template> <div& ...
- scentos7安装redis,以及redis的主从配置
redis的安装 下载redis安装包 wget http://download.redis.io/releases/redis-4.0.6.tar.gz 解压压缩包 tar -zxvf redis- ...
- 第8.10节 使用__class__查看Python中实例对应的类
一. 语法释义 __class__属性很简单,直接返回实例对应的类.语法如下: 实例. class 当不知道一个实例的类名又想对类的部分内容进行访问时可以使用__class__返回类. 注意:是返回实 ...
- 第8.30节 重写Python __setattr__方法实现属性修改捕获
一. 引言 在<第8.26节 重写Python类中的__getattribute__方法实现实例属性访问捕获>章节介绍了__getattribute__方法,可以通过重写该方法,截获所有通 ...
- 第10.3节 Python导入模块能否取消导入?
模块导入后,是否可以取消导入?实际上当模块导入后,是无法逆向还原到导入前的状态的,但是可以利用"del 模块名"进行导入模块的删除,此时的删除只是删除了导入模块对应的模块变量名,删 ...