liunx mysql 5.7 二进制安装
liunx 5.6版本 本人安装次数不下20次,基本上按照正常的操作流程不会出现什么问题,一切顺利。
今天开发新项目需要按照mysql 5.7 版本。mysql 5.7版本和mysql 5.6版本变化挺大的,按照流程稍作休整。
例如:mysql 5.6 初始化使用 scripts目录下面的mysql_install_db 命令,而mysql 5.7 初始化使用 bin目录下
的mysqld --initialize
但是本人在首次尝试按照mysql5.7版本是还是遇到了一些麻烦例如:
安装mysql 5.7.17 版本
在前面的各种正常操作后开始初始化,初始化和mysql 5.6 基本一致,我的数据库数据目录放入/work/data 下面,和安装目录分开的
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/work/mysql/data --pid-file=/usr/local/mysql/data/mysql.pid --tmpdir=/tmp
然而初始化失败,错误信息如下
根据安装经验,初始化出现错的的很少,一般都在启动mysql时报各种错误,也基本上都是因为初始化时my.cnf文件没处理好。
贴一下我的my.cnf
[mysqld]
datadir=/work/mysql/data
basedir=/usr/local/mysql
socket=/tmp/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
skip-name-resolve
character-set-server = utf8mb4
#最大连接数
max_connections = 3000
#内部内存临时表的最大值 ,设置成128M。
#比如大数据量的group by ,order by时可能用到临时表,
#超过了这个值将写入磁盘,系统IO压力增大
tmp_table_size = 134217728
max_heap_table_size = 134217728
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysqld_safe]
user=mysql
tmpdir = /tmp
log-bin= /usr/local/mysql/data/mysql-bin
log-error= /usr/local/mysql/data/error.log
pid-file= /usr/local/mysql/data/mysql.pid
检查了几遍,没看出有什么问题,而且这个my.cnf文件在安装mysql 5.6 时候已经使用过多次,不可能出现问题。
猜测:版本问题。删除了mysql 5.7.17,顺便将初始化过程中数据目录/work/mysql/data 里面的文件删除掉,重新下载别的版本。
重新下载了一个mysql 5.7.24 版本 下载链接:wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz。
安装刚才的步骤执行初始化,成功了。信息如下:
这里已经将初始密码给出来,在root@localhost: 后面那个随机字符串就是
初始化成功后接着执行,修改权限,只将data目录权限留给mysql
chown -R root:root .
chown -R mysql:mysql data
将mysql 添加到启动服务中
cp support-files/mysql.server /etc/init.d/mysql
注意:这里添加的是/etc/init.d/mysql 启动mysql 时候使用命令:service mysql start
如果cp support-files/mysql.server /etc/init.d/mysqld 启动命令:service mysqld startd
可以查看一下开启列表:chkconfig --list 有没有mysql
启动mysql: service mysql start 报错:
mysqld_safe error: log-error set to '/usr/local/mysql/data/error.log', however file don't exists. Create writable for user 'mysql'.
The server quit without updating PID file (/work/mysql/data[FAILED]yx9nw1yvph1w96fZ.pid)
原因很明显,没有找到这个错误日志文件,这个文件在mysql 5.6安装时候系统会自动创建的。
创建error.log文件:touch /usr/local/mysql/data/error.log
给以mysql执行权限:chown -R mysql:mysql /usr/local/mysql/data/error.log
再次启动mysql
Starting MySQL. [ OK ]
下面就是登陆msyql ,修改初始密码,创建远程登陆用户等一些操作
查看数据库数量 show databases 报错信息You must reset your password using ALTER USER statement before executing this statement.
修改密码
alter user user() identified by "123456";
后续步骤 略。。。。
liunx mysql 5.7 二进制安装的更多相关文章
- Mysql数据库的二进制安装和基础入门操作
前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...
- MySQL数据库的二进制安装、源码编译和基础入门操作
一.MySQL安装 (1)安装方式: 1 .程序包yum安装 优点:安装快,简单 缺点:定死了各个文件的地方,需要修改里边的相关配置文件,很麻烦 2 .二进制格式的程序包:展开至特定路径,并经过简单配 ...
- mysql 5.6二进制安装
1. 进入用户家目录创建tools文件夹 # cd ~ #mkdir tools 2.下载MySQL5.6二进制包(搜狐镜像里有各版本下载http://mirrors.sohu.com/mysql/ ...
- 8.0.17 MySQL Community Server 二进制手工安装
8.0.17 MySQL Community Server 二进制手工安装 环境简介 操作系统:Centos 6.10 64位目前版本:8.0.17 MySQL Community Server 二进 ...
- mysql8.0.16二进制安装
mysql8.0.16二进制安装 环境简介操作系统:Centos 6.10 64位 目前版本:8.0.16 MySQL Community Server 二进制 安装目录:/data/mysql/my ...
- ubuntu14.04下简易二进制安装mysql
下载mysql-commnunity的5.6.24通用二进制版 tar解压 我安装到/opt目录,所以mv到/opt/ 可选,建了个软链 ln -s *** mysql 添加运行mysql服务的用户和 ...
- Mysql的二进制安装和基础入门操作
前言:Mysql数据库,知识非常的多,要想学精学通这块知识,估计也要花费和学linux一样的精力和时间.小编也是只会些毛皮,给大家分享一下~ 一.MySQL安装 (1)安装方式: 1 .程序包yum安 ...
- MySQL RPM二进制安装
+++++++++++++++++++++++++++++++++++++++++++标题:MySQL RPM二进制安装时间:2019年2月24日内容:MySQL RPM二进制安装重点:MySQL R ...
- MySQL免编译二进制包安装简记
相比较于MySQL的源代码安装来说.免编译二进制包的速度实在是快了太多,而且性能损失也不是很大,同时具有一定的定制性.所以,如果没有特殊的 需求,尽量用MySQL免编译二进制包来安装MySQL. 1. ...
随机推荐
- 条件语句(if语句)的用法
if语句是实现分支结构的常用分支语句之一,另外还有条件运算符.switch语句等. if语句的功能是:根据给定条件,选择程序执行方向. if语句的基本格式 “if语句”又称条件语句,其基本格式为: ...
- Mysql 分组查询出现'this is incompatible with sql_mode=only_full_group_by'的解决办法
由于Mysql自动开启了 only_full_group_by,所以若查询的字段不在group by里面,则分组报错. 解决办法其一:mysql配置,关闭only_full_group_by,这种办法 ...
- git——解决每次拉取、提交代码时都需要输入用户名和密码
在开发中我们经常需要通过 git 对代码进行拉取和提交,频繁地输入用户名和密码会带来很大的麻烦,下面就介绍一下解决git每次拉取.提交代码时都需要输入用户名和密码的方法. 很简单,只要两步骤就能实现: ...
- 【剑指Offer面试编程题】题目1356:孩子们的游戏(圆圈中最后剩下的数)--九度OJ
题目描述: 每年六一儿童节,JOBDU都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此.HF作为JOBDU的资深元老,自然也准备了一些小游戏.其中,有个游戏是这样的:首先,让小朋友们围成一个大圈. ...
- scala命令行界面:help
:help 查看所有可用命令 scala> :helpAll commands can be abbreviated, e.g., :he instead of :help.:edit < ...
- eclipse启动时权限不够的问题
eclipse启动时权限不够的问题 2009年04月28日 19:19:00 tomey21 阅读数 1445 安装好后每次都要用root权限运行,比较郁闷,摸索了一下,修改一下相关目录的权限就可 ...
- C++中的可调用对象
在C++中,常常会利用函数来简化程序流程.函数的存在使得C++整体更加“模块化”,因而也使得代码可读性大大提高. 在C++程序中,常常会很灵活地调用函数来实现不同的功能与目的(函数重载.继承多态等等) ...
- 「CF438D The Child and Sequence」
一道CF线段树好题. 前置芝士 线段树:一个很有用数据结构. 势能分析:用来证明复杂度,其实不会也没什么关系啦. 具体做法 不难发现,对于一个数膜一个大于它的数后,这个数至少减少一半,每个数最多只能被 ...
- 40个超有趣的Linux命令行彩蛋和游戏
40个有趣的Linux命令行彩蛋和游戏,让你假装成日理万机的黑客高手.附一键安装脚本,在树莓派和ubuntu云主机上亲测成功,有些还可以在Windows的DOS命令行中运行. 本文配套B站视频:40个 ...
- LeetCode刷题--21.合并两个有序链表(简单)
题目描述 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1 -> 2 -> 4 ,1 -> 3 -> 4 输出:1 ...