Centos7下安装和配置MySQL5.7.20的详细教程
作者:女妖精 发布时间:2024-01-17 06:21:13
1.在官网下载MySQL5.7安装包:mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz。
下载地址:https://dev.mysql.com/downloads/mysql/
2.通过SSH Secure Shell Client远程访问CentOS7
3.卸载系统自带的Mariadb数据库
4.创建mysql用户组和mysql用户
5.将MySQL安装包上传到CentOS7服务器/root目录下并解压(这里我是用filezilla去登陆远程服务然后把安装包上传到root目录下的,解压是先cd 到当前文件所在目录,在执行以下目录)
# tar xzvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
6.将解压后的安装包移动到/data下目录,重命名为mysql
# mv /root/mysql-5.7.20-linux-glibc2.12-x86_64 /data/mysq
这里直接用filezilla登陆服务后新建一个data文件夹然后把解压后的文件移动到data目录下并且从命名为mysql
结果如下图
7.修改权限
8.在mysql目录下创建data目录,作为数据库存储位置
# mkdir /data/mysql/data(这里是在mysql目录下去创建data目录)
9.初始化mysql
10.启动MySQL,并查看是否已启动成功
11.通过初始密码登录MySQL,并修改密码
12.关闭MySQL服务,并查看是否关闭成功
13.设置开机自启
以后可以使用service命令控制mysql的启动和停止,命令为:service mysqld start和service mysqld stop,有可能执行的时候会报错,如下图
这是因为mysql默认安装在/usr/local目录下,如果安装在/usr/local目录下则会正常启动和关闭,不会报错。但是本次安装在自定义的/data目录下,此时需要修改vi /etc/init.d/mysqld文件,保存后退出
然后在执行service mysqld start启动命令,OK
再执行service mysqld stop关闭命令,OK
14.配置全局环境变量
编辑/etc/profile文件
# vi /etc/profile
在profile文件底部添加如下两行配置,保存后退出
PATH=/data/mysql/bin:/data/mysql/lib:$PATH
export PATH
设置环境变量立即生效
# source /etc/profile
15.设置远程主机登录
首先 service mysqld start
启动服务
然后登陆mysql:# mysql -uroot -p
然后执行以下命令
远程登录失败
查看3306端口是否已开放
# netstat -nupl|grep 3306
开放3306端口并重启防火墙
再次远程登录,成功
16.结束!
mysql安装好后,尝试在程序中链接mysql然后发现连接不上,错误如下
WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
是Mysql数据库的SSL连接问题,提示警告不建议使用没有带服务器身份验证的SSL连接,是在MYSQL5.5.45+, 5.6.26+ and 5.7.6+版本中才有的这个问题。解决办法在警告中已经说明了
在数据库连接的url中添加useSSL=false
;
vi命令
Ctrl+u:向文件首翻半屏;
Ctrl+d:向文件尾翻半屏;
Ctrl+f:向文件尾翻一屏;
Ctrl+b:向文件首翻一屏;
Esc:从编辑模式切换到命令模式;
ZZ:命令模式下保存当前文件所做的修改后退出vi;
:行号:光标跳转到指定行的行首;
:$:光标跳转到最后一行的行首;
x或X:删除一个字符,x删除光标后的,而X删除光标前的;
D:删除从当前光标到光标所在行尾的全部字符;
dd:删除光标行正行内容;
ndd:删除当前行及其后n-1行;
nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字;
p:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的下方;
P:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的上方;
/字符串:文本查找操作,用于从当前光标所在位置开始向文件尾部查找指定字符串的内容,查找的字符串会被加亮显示;
?name:文本查找操作,用于从当前光标所在位置开始向文件头部查找指定字符串的内容,查找的字符串会被加亮显示;
a,bs/F/T:替换文本操作,用于在第a行到第b行之间,将F字符串换成T字符串。其中,“s/”表示进行替换操作;
a:在当前字符后添加文本;
A:在行末添加文本;
i:在当前字符前插入文本;
I:在行首插入文本;
o:在当前行后面插入一空行;
O:在当前行前面插入一空行;
:wq:在命令模式下,执行存盘退出操作;
:w:在命令模式下,执行存盘操作;
:w!:在命令模式下,执行强制存盘操作;
:q:在命令模式下,执行退出vi操作;
:q!:在命令模式下,执行强制退出vi操作;
:e文件名:在命令模式下,打开并编辑指定名称的文件;
:n:在命令模式下,如果同时打开多个文件,则继续编辑下一个文件;
:f:在命令模式下,用于显示当前的文件名、光标所在行的行号以及显示比例;
:set number:在命令模式下,用于在最左端显示行号;
:set nonumber:在命令模式下,用于在最左端不显示行号;
来源:https://blog.csdn.net/qq_32723447/article/details/80284118


猜你喜欢
- 一.魔法方法1.属性访问通常可以通过点(.)操作符的形式去访问对象的属性。class C:def __init__(self):self.x
- 这两周组里面几位想学习python,于是我们就创建了一个这样的环境和氛围来给大家学习。昨天在群里,贴了一个需求,就是统计squid访问日志中
- 一、设计说明设计这个自动化的目的是想要交替、重复地使用固定的几个分区(分区编号01~05)来保存数据,当最后一个分区就是快满的时候,我们会把
- 本文实例为大家分享了Python3定时发送邮件功能的具体代码,供大家参考,具体内容如下1、 导入模块import osimport date
- 1. 项目背景视频传输: 在一台电脑上播放视频(捕捉摄像头画面),同局域网内另一台电脑上实时播放,尽量不卡顿。先放最后的照片,和用gif展示
- 一、何为php PHP,即“PHP: Hypertext Preprocesso
- JavaScript中的XMLHttpRequest和XML DOM首先,我们需要建立一些规则。特殊的XMLHttpRequest对象和一般
- 用python画图很多是根据z=f(x,y)来画图的,本博文将三个对应的坐标点输入画图:散点图:import matplotlib.pypl
- 问题描述使用 Navicat 导入之前转储好的 sql 文件,报错错误原因在信息日志当中往上翻,发现没有选择数据库,所以报错的原因就是没有提
- 由于代码比较短,这里就不进行注释了代码如下:<% '当目标页面的包含文件即#include的页面里边存在respon
- PyQt5图片显示控件QPixmap介绍QPixmap类用于绘图设备的图像显示,它可以作为一个QPainterDevice对象,也可以加载到
- 本文实例讲述了Python3实现的Mysql数据库操作封装类。分享给大家供大家参考,具体如下:#encoding:utf-8#name:mo
- 对于Linux用户而言,命令行操作我们已经非常熟悉了。与其他流行的操作系统不同,在Linux社区中,使用命令行与使用图形用户界面执行类似任务
- pandas的DataFrame对象,本质上是二维矩阵,跟常规二维矩阵的差别在于前者额外指定了每一行和每一列的名称。这样内部数据抽取既可以用
- 当在设计中我们讨论到,对于一个功能或元素是否应该添加的时候,秉承“如无所需、勿增实体”的原则,我们通常会放弃只有小众/小部分人群才会使用的功
- python的列表很重要,学习到后面你会发现使用的地方真的太多了。最近在写一些小项目时经常用到列表,有时其中的方法还会忘哎!所以为了复习写下
- 开发动机:最近用手机QQ浏览器下载了一些视频,视频越来越多,占用了手机内存,于是想把下载的视频传到电脑上保存,可后来发现这些视频都是m3u8
- 最近在用python写接口的测试程序,期间用到解析字典获取某个key的value,由于多个接口返回的字典格式不是固定的并存在多层嵌套的情况。
- 用了这么长时间,发现自己竟然不知道utf_bin和utf_general_ci这两者到底有什么区别。。ci是 case insensitiv
- 最近在做一个站点时,需要生成静态页面,但是生成的静态页面中有些内容是需要动态获取的,怎不能每天生成一下吧。。 最后上网查了一下,再加上个要总