1.下载MySQL安装包

由于官网下载比较慢,暂时我这边采用的方法是通过网易云的centos镜像下载的地址是

http://mirrors.163.com/mysql/Downloads/MySQL-5.7/

然后手动下载 mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz 文件

通过xftp或者其他工具上传到 /usr/local 目录下面

然后开始解压和创建目录

cd  /usr/local
tar -zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql
cd mysql
mkdir data log

以上就完成了mysql的软件的上传步骤

2.创建用户组mysql,创建用户mysql并将其添加到用户组mysql中,并赋予读写权限

groupadd mysql
useradd -r -g mysql mysql
chown -R mysql mysql/
chgrp -R mysql mysql/
mkdir /home/mysql su - mysql
如果出现-bash-4.2$的问题解决办法 如果直接cp配置文件报错,那就切换root用户 命令:su
cp /etc/skel/.bashrc /home/mysql/
cp /etc/skel/.bash_profile /home/mysql/
source ~/.bashrc
就可以解决

3.创建配置文件

打开MySql配置文件

vi /etc/my.cnf

把已经存在的注释,或者cp之前的文件备份也行

[client]
#客户端配置
port = 3306
socket =/usr/local/mysql/data/mysql.sock [mysqld] character_set_server=utf8
init_connect='SET NAMES utf8'
#安装目录
basedir=/usr/local/mysql
#数据库存放目录
datadir=/usr/local/mysql/data #为MySQL客户端程序和服务器之间的本地通讯指定一个套接字文件
socket=/usr/local/mysql/data/mysql.sock ##错误日志:记录启动,运行,停止mysql时出现的信息
log-error=/usr/local/mysql/log/mysqld.log #如果存在,再次start时会报已经启动
pid-file=/usr/local/mysql/data/mysqld.pid #linux下要严格区分大小写,windows下不区分大小写
#1表示不区分大小写,0表示区分大小写
lower_case_table_names = 0 #默认sql模式,严格模式
#sql_mode = ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,
#NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
#ONLY_FULL_GROUP_BY
#NO_ZERO_IN_DATE 不允许年月为0
#NO_ZERO_DATE 不允许插入年月为0的日期
#ERROR_FOR_DIVISION_BY_ZERO 在INSERT或UPDATE过程中,如果数据被零除,则产生错误而非警告。如 果未给出该模式,那么数据被零除时MySQL返回NULL
#NO_ENGINE_SUBSTITUTION 不使用默认的存储引擎替代 sql_mode= STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION # mysql服务器最大连接数值的设置范围比较理想的是:服务器响应的最大连接数值占服务器上限连接数值的比例值在10%以上
# Max_used_connections / max_connections * 100%
max_connections = 512
# 阻止过多尝试失败的客户端,如果值为10时,失败(如密码错误)10次,mysql会无条件阻止用户连接
max_connect_errors = 1000000
max_connections=5000
default-time_zone = '+8:00' #表描述符缓存大小,可减少文件打开/关闭次数,一般max_connections*2。
table_open_cache = 1024
#MySQL 缓存 table 句柄的分区的个数,每个cache_instance<=table_open_cache/table_open_cache_instances
table_open_cache_instances = 32
#mysql打开最大文件数
open_files_limit = 65535 #是MySQL执行排序使用的缓冲大小。如果想要增加ORDER BY的速度,首先看是否可以让MySQL使用索引而不是额外的排序阶段
#如果不能,可以尝试增加sort_buffer_size变量的大小
sort_buffer_size = 16M

保存退出 insert键切换命令模式,Esc + : + wq

4.初始化mysql数据库

初始化之前,需要先安装MySql依赖包libaio

同上,将libaio的rpm包上传到 usr/local 目录下

安装rpm包

rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm

初始化MySQL

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US

5.查看初始化密码

cat /usr/local/mysql/log/mysqld.log | grep 'password'

记下这个密码,待会登录MySQL使用

6.启动服务,进入mysql,修改初始密码,运行远程连接(这里执行完后,密码将变成:你设置的新密码)

切换用户

su - mysql

启动服务

/usr/local/mysql/support-files/mysql.server start

登录MySQL

/usr/local/mysql/bin/mysql -uroot -p

输入刚刚记下的密码

修改新密码,root可以自己定义

set password=password('root');

更新权限

flush privileges;

修改用户表

update mysql.user set authentication_string= password ('root') WHERE User='root';
UPDATE mysql.user  set Host='%' where `User`='root';

更新

flush privileges;

7.开机自启动

设置之前先切换到root用户,不然会报权限错误,命令:su

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld

8.使用service mysqld命令启动/停止服务

切换到MySQL用户

su - mysql
#启动/停止/重启服务
service mysqld start/stop/restart

9.添加系统路径

vim /etc/profile

添加

export PATH=/usr/local/mysql/bin:$PATH

更新

source /etc/profile

最后使用数据库连接工具测试连接

完成

Linux 断网安装MySQL5.x操作步骤的更多相关文章

  1. linux系统上安装mysql5.6(详细步骤)

    为了学习mycat 尝试在虚拟机上装mysql(看了别人的博客比划着安装),但装了两次都没成功.因此总结了如下步骤 有需要的朋友可以试下(linux需要联网) mysql-5.6.26.tar.gz百 ...

  2. Linux断网安装jdk1.8

    1.创建目录存放jdk包 mkdir /usr/java 2.上传jdk包 通过xftp或者其他远程工具 3.解压jdk tar zxvf jdk-8u221-linux-x64.tar.gz 4.打 ...

  3. linux下MySQL安装登录及操作

    linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-cl ...

  4. Linux系统安装(CentOS-7)详细操作步骤

    Linux系统安装(CentOS-7)详细操作步骤 一.创建虚拟机 首先创建一个虚拟机,然后才能在虚拟机里面安装系统. 第一步,创建虚拟机的向导 第二步,兼容性默认即可. 第三步,我们等创建完虚拟机后 ...

  5. linux 环境RPM 安装MYSQL5.6

    linux 环境RPM 安装MYSQL5.6 系统环境 CentOS7.2 1.关闭selinux 服务[SELinux是一种基于域-类型 模型(domain-type)的强制访问控制(MAC)安全系 ...

  6. linux安装软件的几种方法----linux下编译安装软件的一般步骤

    linux安装软件的几种方法: 一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd so ...

  7. Linux上centOs6+安装mysql5.7详细教程 - 前端小鱼塘

    https://coyhom.github.io/ 人类的本质是复读机,作为一个非linux专业人员学习linux最好的办法是重复 环境centos6.5 版本5.7 1: 检测系统是否自带安装mys ...

  8. Linux环境下安装MySQL5.7

    记录一下Linux环境下安装MySQL,大家按顺序执行即可,5分钟内即可完成安装,亲测可行.不过下载MySQL安装包需要大家花费一些功夫,送个链接给大家,大家按需下载: https://dev.mys ...

  9. Linux学习15-CentOS安装mysql5.6环境

    前言 在linux上安装mysql5.6版本,并远程连接mysql数据库操作 安装mysql mysql的安装可以用yum安装更方便 [root@yoyo ~]# cd /usr/local/ [ro ...

随机推荐

  1. 2018-8-10-win10-uwp-绘图--Line-控件使用

    title author date CreateTime categories win10 uwp 绘图 Line 控件使用 lindexi 2018-08-10 19:16:51 +0800 201 ...

  2. VJhrbustacm0304专题一题解

    L:搬果子 用一般的priority_queue做就可以了. 优先队列//扔进去就能自动排序的序列,记得T组数据要pop干净 #include<iostream> #include< ...

  3. shell 脚本文件十六进制转化为ascii码代码, Shell中ASCII值和字符之间的转换

    Shell中ASCII值和字符之间的转换     1.ASCII值转换为字符        方法一: i=97 echo $i | awk '{printf("%c", $1)}' ...

  4. codeforces 540E 离散化技巧+线段树/树状数组求逆序对

    传送门:https://codeforces.com/contest/540/problem/E 题意: 有一段无限长的序列,有n次交换,每次将u位置的元素和v位置的元素交换,问n次交换后这个序列的逆 ...

  5. 【Git】git-filter-branch - Rewrite branches

    1.命令使用场景 ①Removing sensitive data from a repository(https://help.github.com/en/github/authenticating ...

  6. Nodejs模拟并发,尝试的两种解决方案

    一.准备数据库表 创建商品库存表 db_stock ,插入一条数据 DROP TABLE IF EXISTS `db_stock`; CREATE TABLE `db_stock` ( `id` ) ...

  7. 14.python类型总结,集合,字符串格式化

    借鉴:https://www.cnblogs.com/linhaifeng/articles/5935801.html  https://www.cnblogs.com/wupeiqi/article ...

  8. [梁山好汉说IT] 边缘计算在梁山的应用

    [梁山好汉说IT] 边缘计算在梁山的应用 0x00 摘要 梁山泊下四个酒店就是边缘计算在梁山的应用,以朱贵南山酒店为例能看出其"计算实时/省流量/具备智能"等各种优点. 0x01 ...

  9. 洛谷$P4126\ [AHOI2009]$最小割 图论

    正解:网络流+$tarjan$ 解题报告: 传送门$QwQ$ $umm$最小割的判定问题$QwQ$,因为并不会做是看的题解才会的,所以也没什么推导过程直接放结论趴$QwQ$ 首先跑个最大流,然后有. ...

  10. Java集合使用之next方法与remove方法 | Java集合使用之remove方法使用易错

    Iterator接口的remove方法将会删除上次调用next方法时返回的元素. next方法和remove方法的调用具有相互依赖性,如果调用remove方法前没有调用next方法是不合法的. 错误使 ...