Linux(CentOS 6.5) 下安装MySql 5.7.18 二进制版本粗浅攻略
鉴于Linux和mysql因不同版本,安装方式也不同,所以在阅读本攻略前,请确保各位同学的版本和我的Linux、MySql 版本一致。
如果不一致,只能参考。
我的版本:
Linux CentOS 6.5
MySql 5.7.18
特别提醒:MySq 5.7和5.6在安装方式上有大不同,所以5.6的同学不要看这个攻略。
一、程序准备
1.进入 https://dev.mysql.com/downloads/mysql/
选择 Linux-Generic,根据系统是64位还是32位选择下载的包。tar和tar.gz都行
2.使用SecureCRT远程登录到Linux,并取得root权限
输入:sudo su 取得当前账号的临时root权限。
3.把二进制包从Windows上传至Linux
关于Linux和windows互传的方法有很多,FTP和rzsz命令2种方法是主流。本文使用的是rz命令上传(rz命令需要使用SecureCRT远程连接到Linux)。
rz详细的使用请见:http://www.cnblogs.com/wangxiaoha/p/7059653.html
ftp的方式请大家自己在网上搜索一下方法,为了focus主题,本文就不涉及了。
4.包上传并移动至:/usr/local/
输入如下两个命令
cd /usr/local
rz -be (大文件必须加-be,不然会报错)
弹出对话框,选择MySql二进制包。开始上传。
上传完毕后,文件的路径应该是这样的:
/usr/local/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
我们需要解压改压缩包。
当前的目录在 /usr/local/
输入如下命令:
tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
解压完毕以后,会新增如下文件夹,文件夹里面就是mysql的运行程序
/usr/local/mysql-5.7.18-linux-glibc2.5-x86_64
为了方便,我们把文件夹的名字改成mysql
当前目录在/usr/local/
输入:
mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql
修改完毕。
4.建立一个新文件夹
mkdir \usr\local\data\mysql
基本工作准备完毕。
PS:
1、为什么绝大部分的mysql的安装指导都会让我们 把mysql包解压之后 ,用mv命令移到/usr/local/,然后把文件名修改为mysql呢,个人粗浅的认为有两点。一是约定俗成,如果以后有别的账号登录或者别的程序需要找mysql的程序路径,配个大家约定俗成的地址就ok了,不用再修改。二是,usr/local这个文件夹属于linux的公共文件夹,他的权限放得比较开,基本上有root权限操作都是开放的。但是如果把程序放在别的地方,特别是个人文件夹中,极有可能会因为各种文件权限问题而异常不断,非常影响学习效率。以后当初学者成为老鸟以后,你怎么玩也行。
2、为什么要建立一个\usr\local\data\mysql目录。这是mysql的要求,因为它需要你指定一个地方存数据库的数据文件。我们以后的数据都库表,和表里的数据都保存在这个文件夹里。
第二章:安装配置Mysql
1.在linux中建立新的用户和用户组
sudu su
取得root权限,创建mysql用户组
groupadd mysql
创建mysql用户,并属于mysql用户组
useradd -r -g mysql mysql
2.对文件夹指定所有者
cd /usr/local
chown -R mysql mysql/ 将mysql文件夹的所有者指定为mysql用户
chgrp -R mysql mysql/ 将mysql文件夹的所有组指定为mysql用户组
3.新增mysql的全局配置文件
5.7.18没有找到默认的配置文件。这个在网上找到一个模板:
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL. [mysqld] sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES # 一般配置选项
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
socket = /var/run/mysqld/mysqld.sock
character-set-server=utf8 #下面是可选项,要不要都行,如果出现启动错误,则全部注释掉,保留最基本的配置选项,然后尝试添加某些配置项后启动,检测配置项是否有误
back_log = 300
max_connections = 3000
max_connect_errors = 50
table_open_cache = 4096
max_allowed_packet = 32M
#binlog_cache_size = 4M max_heap_table_size = 128M
read_rnd_buffer_size = 16M
sort_buffer_size = 16M
join_buffer_size = 16M
thread_cache_size = 16
query_cache_size = 128M
query_cache_limit = 4M
ft_min_word_len = 8 thread_stack = 512K
transaction_isolation = REPEATABLE-READ
tmp_table_size = 128M
#log-bin=mysql-bin
long_query_time = 6 server_id=1 innodb_buffer_pool_size = 1G
innodb_thread_concurrency = 16
innodb_log_buffer_size = 16M innodb_log_file_size = 512M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
innodb_file_per_table = on [mysqldump]
quick max_allowed_packet = 32M [mysql]
no-auto-rehash
default-character-set=utf8
safe-updates [myisamchk]
key_buffer = 16M
sort_buffer_size = 16M
read_buffer = 8M
write_buffer = 8M [mysqlhotcopy]
interactive-timeout [mysqld_safe]
open-files-limit = 8192 [client]
将以上的文本粘贴下来,保存为my.cnf,并通过rz命令或ftp上传至 etc/my.cnf,需要配置的是如下4行。
basedir = /usr/local/mysql mysql的程序文件夹路径
datadir = /usr/local/data/mysql mysql的数据文件夹路径
port = 3306 数据库的对外访问网络端口,一般保存默认3306
socket = /var/run/mysqld/mysqld.sock socket连接执行文件的地址 以上3行都很容易理解,第4个稍微麻烦一些。到目前为止可以占时忽略它。一会儿来处理它
3.初始化mysql
cd /usr/local/mysql/bin
./mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/data/mysql
以不安全的方式初始化mysql,且指定其所有者用户为mysql。insecure不安全,其实就是没有初始密码(必须为root权限)。对一般初学者来讲,没密码要方面很多。
如果一切顺利,当前账号拥有/usr/local/data/mysql的写入权限的话,mysql程序会在data/mysql里写入mysql自己的数据库。不然那会报错。
4.配置socket地址和处理配置文件
还记得/etc/my.cnf文件中的这一行么
socket = /var/run/mysqld/mysqld.sock 我们现在需要查找mysql.sock这个文件到底被mysql初始化到哪里去了,输入如下命令:
find / -name 'mysql.sock' 发现它在:
/var/lib/mysql/mysql.sock 所以 socket = /var/lib/mysql/mysql.sock
my.cnf配置完毕 在启动mysql以前,还需要最后一步: mv /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld PS: 一、为什么要把配置文件copy到etc文件夹。因为etc文件夹是linux的配置文件中心,几乎大部分的配置文件都在这里。像mysql这种有全局服务的程序来讲,放入这里方便以后的使用和操作。 二、为什么要给mysql文件夹和文件指定专门的mysql用户,一句话安全。如果mysql被攻破的话,黑客只能拿到mysql用户的权限,不会影响别的系统。 第三章:启动mysql,完成基础设置 1. 启动mysql cd /usr/local/mysql/bin ./mysqld_safe --user=mysql /etc/init.d/mysqld restart
2.连接mysql
cd /usr/local/mysql/bin
./mysql -uroot -p 提示输入密码,直接回车
连接成功!
3.修改密码
搞定!以上。
Linux(CentOS 6.5) 下安装MySql 5.7.18 二进制版本粗浅攻略的更多相关文章
- centos7下安装MySQL 5.7.26 二进制版本(免安装绿色版)
MySQL 5.7.26 二进制版本安装(免安装绿色版) 下载地址 https://downloads.mysql.com/archives/community/ https://cdn.mysql. ...
- centos 6.5下安装mysql+nginx+redmine 3.1.0 笔记
centos 6.5下安装mysql+nginx+redmine 3.1.0 笔记 目录[-] 过程 1.安装RVM 2.利用rvm安装 Ruby 1.9.3 并设为默认 3.安装rails 4.安装 ...
- 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 ...
- CentOS 6.5下安装MySQL 5.6.21
Linux中使用最广泛的数据库就是MySQL,使用在线yum的方式安装的版本落后MySQL网站好几个小版本,本节亲自测试安装新版的MySQL. 测试机器环境: VMware Workstation 1 ...
- linux(centos 6.4)下安装php memcache服务端及其客户端(详细教程)
前言 在搭建个人博客时,由于没有使用任何框架,纯手工code前台和后台,导致遇到许多问题,其中一个问题就是mysql连接导致的页面相应速度异常低.在查询各种途径后,只能考虑使用memcache缓存.在 ...
- First Linux Centos 7.2 rpm 安装MySQL 5.7
服务器需要换python环境,手贱重装了,今天凑巧需要测试数据库,花了一个小时搞了一下MySQL安装. 1.删除原有Mariadb 说明:目前centos默认的MySQL是Mariadb,由于习惯了M ...
- CentOS 7+ 环境下安装MySQL
在CentOS中默认安装有MariaDB,但是我们需要的是MySQL,安装MySQL可以覆盖MariaDB MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 ...
- Linux CentOS 使用Yum源安装MySQL 5.7
在CentOS(Fedora.RedHat)系统中,可以使用yum install mysql命令来安装MySQL,但所安装的MySql版本一般都较旧,所以更推荐通过源码编译安装或下载最新rpm安装包 ...
- Linux腾讯云下安装mysql
百度云盘下载地址https://pan.baidu.com/s/1MqUEdeqZuQbq-veLuVItQQ 将下载好的mysql-5.7.14-linux-glibc2.5-x86_64.tar. ...
随机推荐
- decltype类型声明- 现代C++新特性总结
decltype类型声明 有时会遇到这样的情况:希望从表达式的类型推断出要定义的变量的类型,但不想用该表达式的值去初始化变量.为了满足这一需求,C++11引入了decltype,它的作用是选择并返回操 ...
- Sqoop导入HBase,并借助Coprocessor协处理器同步索引到ES
1.环境 Mysql 5.6 Sqoop 1.4.6 Hadoop 2.5.2 HBase 0.98 Elasticsearch 2.3.5 2.安装(略过) 3.HBase Coprocessor实 ...
- kernel下nand flash的文件系统总结
1.FLASH转换层(FTL) EXt2/EXT3/EXT4文件系统可以通过FTL实现对flash的支持,因为FTL可以将闪存flash模拟成磁盘结构. 在ext2文件系统的基础上上,为了保证数据的一 ...
- python写http post请求的四种请求体
Web自动化测试(25) HTTP 协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须使用什么编码方式.常见的四种编码方式如下: 1.appli ...
- testng入门教程12 TestNG执行多线程测试
testng入门教程 TestNG执行多线程测试 testng入门教程 TestNG执行多线程测试 并行(多线程)技术在软件术语里被定义为软件.操作系统或者程序可以并行地执行另外一段程序中多个部分或者 ...
- iOS下拉刷新和上拉刷新
在iOS开发中,我们经常要用到下拉刷新和上拉刷新来加载新的数据,当前这也适合分页.iOS原生就带有该方法,下面就iOS自带的下拉刷新方法来简单操作. 上拉刷新 1.在TableView里,一打开软件, ...
- discuz $_G变量
class.core.php中 global $_G; $_G = array( 'uid' => 0, 'username' => ...
- HZNU_TI1050 训练实录
菜鸡队训练实录 比赛记录:[名称:奖项 / 排名] 2018: ZJPSC Bronze / 86 CCPC Jilin ...
- LR和SVM的相同和不同
之前一篇博客中介绍了Logistics Regression的理论原理:http://www.cnblogs.com/bentuwuying/p/6616680.html. 在大大小小的面试过程中,经 ...
- 论文笔记:语音情感识别(二)声谱图+CRNN
一:An Attention Pooling based Representation Learning Method for Speech Emotion Recognition(2018 Inte ...