centos7-安装mysql5.6.36

本地安装了mysql5.7, 但和springboot整合jpa时会出现 hibernateException, 不知道为什么, 换个mysql5.6版本的mysql,  源码安装, cmake一直过不去, 后来改成rpm安装

1, 获取mysql5.6

ftp://ftp.mirrorservice.org/sites/ftp.mysql.com/Downloads/MySQL-5.6/

下载: 

解压: 

其中  el6标识 centos 6, el7 标识centos 7

 

2, 安装

rpm -ivh MySQL-*

如果缺少依赖, 可以挂载centos的本地yum源解决 (https://www.cnblogs.com/wenbronk/p/9357471.html)

如果提示冲突, 使用 rpm -e xxx --nodes 卸载就可以

3, 启动, 通过netstat -nltp 查看端口监听( 老版本是 mysqld 服务)

systemctl start mysql

4, 查看初始密码

cat /root/.mysql_secret

5, 更改密码

mysql -uroot -pKAKt5JmEjm6B8omV
SET PASSWORD = PASSWORD('root');

 6, 远程登陆设置

mysql> user mysql;
mysql> select host, user, password from user;
mysql> update user set password=password('root') where user='root';
mysql> update user set host='%' where user='root' and host='localhost';

授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '这里是你的密码' WITH GRANT option;
必须刷新
flush privileges;

7, 设置开机启动

[root@localhost ~]# chkconfig mysql on
[root@localhost ~]# chkconfig --list | grep mysql

8, MySQL的默认安装位置

/var/lib/mysql/               #数据库目录
/usr/share/mysql              #配置文件目录
/usr/bin                     #相关命令目录
/etc/init.d/mysql              #启动脚本

9, 修改默认字符集等

vim /etc/my.cnf

[client]  
password        = root
port            = 3306  
default-character-set=utf8  
[mysqld]  
port            = 3306  
character_set_server=utf8  
character_set_client=utf8  
collation-server=utf8_general_ci  
#(注意linux下mysql安装完后是默认:表名区分大小写,列名不区分大小写; 0:区分大小写,1:不区分大小写)  
lower_case_table_names=1  
#(设置最大连接数,默认为 151,MySQL服务器允许的最大连接数16384; )  
max_connections=1000  
[mysql]  
default-character-set = utf8  

10, 查看字符集

show variables like '%collation%';  
show variables like '%char%';

 

源码安装: 

1, 下载依赖

yum install gcc-c++
yum -y install ncurses-devel
wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz
tar -zxv -f /root/cmake-2.8.4.tar.gz
cd cmake-2.8.4
./configure

make && make install

2, 创建mysql 用户和用户组, 创建目录

groupadd mysql
useradd mysql -s /sbin/nologin -M -g mysql

 

  mkdir -p /app/mysql-5.5.32/data
  mkdir -p /app/mysql-5.5.32/tmp

3.  获取mysql

wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.38.tar.gz

解压, 并编译安装

cmake . -DCMAKE_INSTALL_PREFIX=/app/mysql-5.6.38 \  #安装路径
-DMYSQL_DATADIR=/app/mysql-5.6.38/data \                #数据文件路径
-DMYSQL_UNIX_ADDR=/app/mysql-5.6.38/tmp/mysql.sock \  #sock路径
-DMYSQL_USER=mysql \
-DDEFAULT_CHARSET=utf8 \                                           #默认的字符集
-DDEFAULT_COLLATION=utf8_general_ci \                       #默认的校对规则
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \                   #额外支持的字符集
-DENABLED_LOCAL_INFILE=ON \                                   #打开LOCAL_INFILE功能
#开启支持多种引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FAST_MUTEXES=1 \
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITHREADLINE=1 \
-DWITHEMBEDDED_SERVER=1 \
-DWITH_DEBUG=0

make && make install

# 注意去掉所有注释, 并无bom格式

5, 复制参数文件

cp /app/mysql-5.6.38/support-files/my-small.cnf /etc/my.cnf

6, 配置环境变量

echo 'export PATH=/app/mysql-5.6.38/bin:$PATH' >> /etc/profile
tail -1 /etc/profile
source /etc/profile
echo $PATH

7, 更改用户组权限

chown -R mysql.mysql /app/mysql-5.5.32

8, 执行数据库初始化脚本

./mysql_install_db --basedir=/app/mysql-5.5.32 --datadir=/app/mysql-5.5.32/data --user=mysql

9, 将mysql 加入系统启动

cp /app/mysql-5.5.32/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld

10, 启动

/etc/init.d/mysqld start
netstat -lntup | grep 3306

 11, 设置用户, 赋予权限等

3, 创建新用户并授权

https://www.cnblogs.com/sos-blue/p/6852945.html 

https://www.cnblogs.com/xujishou/p/6306765.html

异常: 

1, CMake Error: The source directory "/root/mysql-5.5.29-linux2.6-x86_64" does not appear to contain CM

  下载的包不是源码包

2, 清空cmake, 重新编译

# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf

 

配置mysq忽略大小写: 

vi /etc/my.cnf中加入lower_case_table_names = 1

 

mysql 5.7 的安装: 

1), 需要安装的包

2), 修改用户名添加权限等

https://www.cnblogs.com/daemon-/p/9009360.html

a, 修改不需要密码登陆, 修改/etc/my.cnf

[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/tmp/mysql.sock
user=mysql
port=3306
character-set-server=utf8
# 取消密码验证
skip-grant-tables
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# skip-grant-tables
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

b, 登陆mysql

mysql -u root -p

直接回车就可登陆

c, 修改密码

>>update user set authentication_string=password('你的密码') where user='root';>>flush privileges;>>exit;

d, 将/etc/my.cnf中的skip-grant-tables删除

e, 登录再次设置密码(不知道为啥如果不再次设置密码就操作不了数据库了)

如果报错: 

https://www.cnblogs.com/ivictor/p/5142809.html

/usr/local/mysql/bin/mysql -u root -p>>ALTER USER 'root'@'localhost' IDENTIFIED BY '修改后的密码';>>exit;

f, 加入开机启动

# 将mysql加入服务

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

# 开机自启

chkconfig mysql on

# 开启

service mysql start

转载于:https://www.cnblogs.com/wenbronk/p/6840484.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455689.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mad的问题汇总

Q:我想将I帧的预测图像和原始图像的平均绝对误差给输出来,请问这个在JM86中需要在哪一点改动呢?谢谢 A: 差值保存在diffy中: diffy[j][i] imgY_org[img->opix_yj][img->opix_xi] - pred[j][i]; 分析MAD不知道程…

迷之骚缩写

搜集一些 GitHub 常见骚缩写,以备查询使用。 原文链接:LGTM? 那些迷之缩写 PR: Pull Request. 拉取请求,给其他项目提交代码LGTM: Looks Good To Me. 朕知道了 代码已经过 review,可以合并SGTM: Sounds Good To Me. 和上面那句意…

github设置中文_静态博客托管图片至 GitHub

从 MWeb 切换到静态博客 Jekyll 之后,我就面临一个问题,这在很久之前使用 Hexo 同样遇过的:图片托管在何处。MWeb 的解决方式很棒,直接插入图片,推送到 Github 后亦能正常引用并显示,无需图床或者借助第三方…

JavaScript中的正则

js正则 正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串, 正则表达式通常被用来检索、替换那些符合某个模式的文本 声明方式 普通字符 new RegExp();/hehe/转义字符 \w \W \d \D \s \S var reg /\w/;//单个的字母数字下划线 var reg /\W/;…

SQL注入【sqli靶场第23-28关】(七)

★★免责声明★★ 文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与学习之用,读者将信息做其他用途,由Ta承担全部法律及连带责任,文章作者不承担任何法律及连带责任。 0、总体思路 先确认是否可以SQL注入,使用单…

Linq中string转int的方法

Linq中string转int的方法 在做批量删除时,需把一串id值所对应的数据删除,调试出现问题: Linq语句中如果使用ToString()进行类型转换,编译时不会报错,但执行时会出现如下错误: “LINQ to Entities 不识别方法"System.String T…

名称缩写第二波

1 公司内部 缩写 全称 中文 说明 PMproduct manager产品经理RDResearch and Development研发工程师FEFrontend Engineer前端工程师UEUser Experience用户体验设计师QAquality assurance质量保证,测试OP operator 运维工程师EEEngeering Excellence工程效率部ETEn…

php动态获取函数参数

PHP 在用户自定义函数中支持可变数量的参数列表。其实很简单,只需使用func_num_args() , func_get_arg() ,和 func_get_args() 函数即可。可变参数并不需要特别的语法,参数列表仍按函数定义的方式传递给函数,并按通常…

漏桶算法与令牌桶算法

漏桶算法(Leaky Bucket)是网络世界中流量整形(Traffic Shaping)或速率限制(Rate Limiting)时经常使用的一种算法,它的主要目的是控制数据注入到网络的速率,平滑网络上的突发流量。漏桶算法提供了一种机制&a…

java linux 调用32位so_Linux上TCP的几个内核参数调优

Linux作为一个强大的操作系统,提供了一系列内核参数供我们进行调优。光TCP的调优参数就有50多个。在和线上问题斗智斗勇的过程中,笔者积累了一些在内网环境应该进行调优的参数。在此分享出来,希望对大家有所帮助。调优清单好了,在…

jquery中的选择器

jquery选择器 jquery用法思想 选择某个网页元素,然后对它进行某种操作 jquery选择器 jquery选择器可以快速地选择元素,选择规则和css样式相同 基础选择器 //通过id来获取元素 document.getElementById(); // $(#logo).css(border,solid 2px red); //…

【好文收藏】【持续更新】今天你机器学习了吗

✔数学建模常用模型23:马尔可夫预测方法_HaLosec_Wei-CSDN博客_马尔可夫模型预测法 ✔simhash算法及原理简介_lengye7的博客-CSDN博客_simhash ✔👍使用机器学习构建简单金融风控反欺诈模型(一)EDAXGBOOST - 知乎 Python机器学…

H.264码率控制机制

H.264标准码率控制算法步骤如下:1.计算当前帧的目标码字,并将其限定到HRD的边界中。2.通过线性模型(式4.5)预测当前帧中基本单元的MAD。 3.为未编码基本单元分配码字。4.通过二次R&a…

[dp]最长单调递增子序列LIS

https://www.51nod.com/tutorial/course.html#!courseId12 解题关键: 如果将子序列按照长度由短到长排列,将他们的最大元素放在一起,形成新序列$B\left\{ {{b_1},{b_2}, \ldots \ldots ,{b_j}} \right\}$,则序列$B$满足${b_1} &l…

jQuery中的元素操作

jQuery元素操作 通过jQuery可以操作控制元素的样式,文本,属性等 jquery样式操作 css操作行内样式 // 获取div的样式 $("div").css("width"); $("div").css("color");//设置div的样式 $("div").css("width",&q…

指针结构体函数-事实上能够这样具体理解

今天一大早登了下QQ空间,看到本科的一个学弟发表一篇日志。写关于西电微软俱乐部面试题的解答,写的非常不 错。我也一下子起兴了,由于我以前也是被指针困惑非常久。搞不清头绪,本科到研究生。我也笔试面试不下二十次 了。每次面试…

【python毕业设计】Django框架实现学生信息管理系统

Django框架实现学生信息管理系统 演示视频:Django学生信息管理系统_腾讯视频 演示界面内容如下 总体概括 注册流程 首先进行输入用户名(邮箱)、密码以及验证码,输入完之后点击注册按钮。如果输入的不正确,提示错误信…

python中continue只结束本次循环_循环(while,break,continue),转义字符

Apple iPhone 11 (A2223) 128GB 黑色 移动联通电信4G手机 双卡双待 4999元包邮 去购买 >01. 程序的三大流程 在程序开发中,一共有三种流程方式: 顺序 —— 从上向下,顺序执行代码 分支 —— 根据条件判断,决定执行代码的 分支 …

码率控制技术原理

引起编码器的输出比特码率波动的原因主要有两个。首先,数字视频信号中包含了大量的时域和空域冗余,编码器的主要任务就是去除这些冗余。由于时间冗余和空间冗余是随机的,从而造成编码器输出比特率波动。另一个原因是变长编码,变长…

python如何安装pip

pip的安装操作 pip简介 pip 是一个现代的,通用的 Python 包管理工具。提供了对Python 包的查找、下载、安装、卸载的功能。 环境搭建 安装pip首先要安装python,可以参考python安装教程 安装完python后,可以在cmd中输入pip list 测试一下pip是否默认附带着安装,若…