Mysql5.7-CentOS7安装
下载Mysql
官网地址,点击download,找到Community
选择MySQL Community Server
选择平台和版本下载即可
安装mysql
查看安装文档
在下载页面上面有安装指南
选取指定的平台,查看安装步骤
进入到安装指南页面,warning大概翻译就是,如果之前安装过mysql,比如通过yum或者apt安装,那估计这次就很难装。
Important翻译大概是,mysql依赖libaio这个library。如果没有安装,那么安装会失败。
删除自带的mariadb,卸载后/etc/my.cnf将不存在!!!初始化及启动要自己指定参数,不推荐卸载!!!
- [root@localhost mysql]# rpm -qa|grep mariadb #查找是否安装mariadb
- mariadb-libs-5.5.-.el7.x86_64
- [root@localhost mysql]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64 #卸载mariadb
- warning: /etc/my.cnf saved as /etc/my.cnf.rpmsave
解压创建软连接,改变文件所属用户及组(单独设data的所属用户名和组即可)
- tar zxvf /path/to/mysql-VERSION-OS.tar.gz #将tar压缩文件解压到当前文件夹
- ln -s /usr/local/mysql_5.7.0 mysql #把解压后的文件软连接mysql,软连接mysql文件在/usr/local下面,或者重命名也可以
- groupadd mysql #添加一个用户组
- useradd -r -g mysql -s /bin/false mysql #添加一个用户
- cd /usr/local #进入到文件夹
- cd mysql #进入到mysql,mysql为软连接
- mkdir data #新建一个data文件夹
- chown mysql:mysql data #data文件夹指定所属的用户和组,
- chmod data #为这个文件赋予权限
- #创建日志目录,mariadb里配置的文件,没有mariadb则不需要
- mkdir /usr/local/mysql/logs
- chown -R mysql:mysql /usr/local/mysql/logs
- echo "" > /usr/local/mysql/logs/mysql.log
- chown -R mysql:mysql /usr/local/mysql/logs/mysql.log
- chmod 777 /usr/local/mysql/logs/mysql.log #给日志写权限
- [root@localhost mysql]# chown -R mysql . #改变当前文件夹所属用户,可以不设,单独设data的所属也可以
- [root@localhost mysql]# ll
- total
- drwxr-xr-x mysql root May : bin
- -rw-r--r-- mysql Mar : COPYING
- drwxr-x--- mysql mysql May : data
- drwxr-xr-x mysql root May : docs
- drwxr-xr-x mysql root May : include
- drwxr-xr-x mysql root May : lib
- drwxr-xr-x mysql root May : man
- -rw-r--r-- mysql Mar : README
- drwxr-xr-x mysql root May : share
- drwxr-xr-x mysql root May : support-files
- [root@localhost mysql]# chgrp -R mysql . #改变当前文件夹所属组
- [root@localhost mysql]# ll
- total
- drwxr-xr-x mysql mysql May : bin
- -rw-r--r-- mysql mysql Mar : COPYING
- drwxr-x--- mysql mysql May : data
- drwxr-xr-x mysql mysql May : docs
- drwxr-xr-x mysql mysql May : include
- drwxr-xr-x mysql mysql May : lib
- drwxr-xr-x mysql mysql May : man
- -rw-r--r-- mysql mysql Mar : README
- drwxr-xr-x mysql mysql May : share
- drwxr-xr-x mysql mysql May : support-files
安装命令
配置,修改/etc/my.cnf文件,此文件作为初始化和启动时的参数,datadir默认为/var/lib/mysql,卸载mariadb后无此文件
- [mysqld]
- basedir=/usr/local/mysql #指定basedir,启动时就不用指定basedir了
- datadir=/usr/local/mysql/data #/var/lib/mysql
- socket=/usr/local/mysql/data/mysql.sock #/var/lib/mysql/mysql.sock
- port=
- character_set_server=utf8
- user=mysql
- # Disabling symbolic-links is recommended to prevent assorted security risks
- symbolic-links=
- # 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
- #客户端设置,即客户端默认的连接参数
- [client]
- #默认连接端口
- port =
- #用于本地连接的socket套接字,这个不同于上面mysqld中的socket,如果这个不写执行mysql -uroot -p会报错
- socket = /usr/local/mysql/data/mysql.sock
- #编码
- default-character-set = utf8
- [mysqld_safe]
- log-error=/usr/local/mysql/logs/mysql.log #log可以写在mysql新建的文件夹中,记得给mysql.log赋权限
pid-file=/usr/local/mysql/data/mysql.pid #创建新建的data文件夹中,原始为/var/run/mariadb/mariadb.pid
其他配置:
SQL Error (1055) sql_mode=only_full_group_by问题
安装
- #初始化mysql,指定mysql的文件夹和data的文件夹,卸载mariadb后必须指定,basedir和basedata不指定默认用/etc/my.cnf文件里面的参数
- ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &
- ./bin/mysql_ssl_rsa_setup
- #启动mysql,卸载mariadb后必须指定,--user也可以写在配置文件里,相当于./bin/mysqld_safe --defaults-file=/etc/my.cnf
- ./bin/mysqld_safe --user=mysql &
- #将文件复制到服务中,具体看下面的将mysql设为服务
- cp support-files/mysql.server /etc/init.d/mysql.server
启动
有安装mariadb的话/etc/my.cnf文件中配置好的参数,实例化和启动可以不指定,没有/etc/my.cnf的话一定要指定.
执行启动语句后面加&是指在后台运行.
查看是否启动成功 ps -ef|grep mysql
更改密码
如果忘记临时密码把datadir目录下的文件删掉,重新初始化,一定要给logs/mysql.log写权限,不然密码写不进去,搜索password即可查看临时密码。
- ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &
./bin/mysql -u root -p -h 127.0.0.1 #进入的mysql的root用户,输入密码,即刚才的临时密码
set password for 'root'@'localhost' =password('123456'); #更改新密码
通过修改mysql表,批量修改所有root用户名的密码(包括远程账号的root)
登录mysql系统,
# mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("123456") where user='root';
mysql> flush privileges;
mysql> exit;
关闭
没有安装为服务时,使用此方法关闭mysql。
- /usr/local/mysql/bin/mysqladmin -u root -p shutdown #输入密码后关闭成功
连接中的会显示
Mysql设置为服务
- [root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #复制启动脚本到资源目录
- [root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld #增加mysqld服务控制脚本执行权限
- [root@localhost mysql]# chkconfig --add mysqld #将mysqld服务加入系统服务
- [root@localhost mysql]# chkconfig --list mysqld #检查mysqld服务是否生效
- Note: This output shows SysV services only and does not include native
- systemd services. SysV configuration data might be overridden by native
- systemd configuration.
- If you want to list systemd services use 'systemctl list-unit-files'.
- To see services enabled on particular target use
- 'systemctl list-dependencies [target]'.
- mysqld :off :off :on :on :on :on :off
配置好后可以使用service命令控制mysql的启动和停止,命令为:service mysqld start和service mysqld stop
如果出现command not found是因为没有安装在目录/usr/local下面,更改配置文件vi /etc/init.d/mysqld指定安装的mysql目录及data目录即可
设置远程主机登录
./bin/mysql -u root -p #进入的mysql的root用户,输入密码
- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
配置全局环境变量
编辑/etc/profile文件
# vi /etc/profile
在profile文件底部添加如下两行配置,保存后退出
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH
设置环境变量立即生效
# source /etc/profile
查看3306端口是否已开放
- # vi /etc/sysconfig/iptables
- -A INPUT -p tcp -m tcp --dport -j ACCEPT
- # service iptables restart
- Linux下开启/关闭防火墙命令
- #) 永久性生效,重启后不会复原
- #开启: chkconfig iptables on
- #关闭: chkconfig iptables off
- #) 即时生效,重启后复原
- #开启: service iptables start
- #关闭: service iptables stop
问题
1.初始化mysql时报错
解决方法:
查看mysql配置文件: vi /etc/my.cnf,如果卸载mariadb,则cd到初始化时指定的--datadir目录
找到mysql的datadir,进入datadir: cd /var/lib/mysql,
删除所有文件: rm -rf *。然后再初始化即可
2.通过用mariadb的/etc/my.cnf文件,启动时报错Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’
打开/etc/my.cnf,查看是否是socket=/var/lib/mysql/mysql.sock,不是则改为它。并在终端输入以下命令。
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
卸载mariadb无配置文件
Mysql5.6问题
配置好my.ini
初始化数据库
执行初始化操作前一定要安装模块
yum -y install autoconf
初始化操作
./script/mysql_install_db --user=mysql --basedir=/usr/local/mysql5.6 --datadir=/usr/local/mysql5.6/data --pid-file=/usr/local/mysql5.6/data/mysql.pid
启动
./support-files/mysql.server start
更改密码
和mysql5.7不同的是5.6密码为空,直接登录。
update user set authentication_string=password('123456') where user='root';
问题
Starting MySQL. ERROR! The server quit without updating PID file (/usr/local/mysql5.6/data/ecs-3-0924974.novalocal.pid).
先查询my.ini配置的err-log配置错误日志,查询相关问题。
Mysql5.7-CentOS7安装的更多相关文章
- Centos7安装并配置mysql5.6完美教程
Centos7安装并配置mysql5.6完美教程 Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想使用mysql的开发人员来说并不是一个好消息.然而,网上关于Linux安装 ...
- Centos7安装mysql-5.7.19
Centos7安装Mysql 一 mysql下载 地址: https://dev.mysql.com/downloads/mysql/#downloads 二 在centos7上创建安装文件存放.解压 ...
- Centos7.3下mysql5.7.18安装并修改初始密码的方法
Centos7.3下mysql5.7.18安装并修改初始密码的方法 原文链接:http://www.jb51.net/article/116032.htm 作者:Javen205 字体:[增加 减小] ...
- centos7环境下mysql5.7的安装与配置
最近无事闲来折腾虚拟机,以前都是折腾云服务器,现在自己捣捣.看到mysql的教程蛮好的,准备做个笔记.原文来自mysql5.7的安装与配置(centos7环境) 第一步:下载mysql [root@M ...
- Centos7安装并配置mysql5.6
1.下载安装包:https://pan.baidu.com/s/18xAumOggjm9bu9Wty6kYjg 2.卸载系统自带的Mariadb 2.1查询已安装的mariadb [root@loca ...
- Centos7 安装配置mysql5.6
Centos7下完美安装并配置mysql5.6 Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想用mysql的人来说并不是一个好消息. 最近我搜罗了网上各种安装教程,各 ...
- Centos7 安装 MySQL5.7
Centos7 安装 MySQL5.7 一.环境介绍 1.安装包版本介绍 MySQL 有三种安装方式:RPM安装.二进制包安装.源码包安装.我们这篇文章以二进制方式安装MySQL 软件名称 版本 系统 ...
- centos7安装mysql5.7.19及配置远程连接
centos7安装mysql5.7.19及配置远程连接------https://blog.csdn.net/Lh19931122/article/details/77996213
- centos7环境下mysql5.7的安装与配置(免安装版)
最近无事闲来折腾虚拟机,以前都是折腾云服务器,现在自己捣捣.看到mysql的教程蛮好的,准备做个笔记.原文来自mysql5.7的安装与配置(centos7环境) 第一步:下载mysql ? 1 [ro ...
- centos7下mysql5.7的安装与配置
centos7下MySQL5.7的安装与配置 下载 下载地址 根据系统和版本选择红框中的四个RPM包下载即可,然后放到centos7系统中的/opt目录下,等待稍后安装. 安装前的准备 1. 检查系统 ...
随机推荐
- Spark2.0机器学习系列之3:决策树
概述 分类决策树模型是一种描述对实例进行分类的树形结构. 决策树可以看为一个if-then规则集合,具有“互斥完备”性质 .决策树基本上都是 采用的是贪心(即非回溯)的算法,自顶向下递归分治构造. 生 ...
- Hibernate错误:Could not bind factory to JNDI
使用hibernate时,将hibernate.cfg.xml中 <session-factory name="SessionFactory">的那么属性去掉即可.因为 ...
- vmware12 安装linux centos6
内核选 2.6 中文安装选 基本系统 -> 基本, 兼 ...
- vue简单demo
为了学习基础语法,我并没有用vue-cli脚手架来vue init [基于什么类型] [项目名称]初始化项目,而是直接<script>../vue.js</script> & ...
- Java-线程池专题(什么是线程池,如何使用,为什么要用)
1.什么是线程池: java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池 多线程技术主要解决处理 ...
- Ubuntu 16.04 安装Postman
Ubuntu 16.04 安装Postman: 1.官网下载地址:https://www.getpostman.com/根据机器类型选择64位下载. 2.进入下载目录,解压该文件sudo tar -x ...
- springboot 监控
一.什么是spring-boot-starter-actuator(doc) springboot项目如何检查配置与运行状态呢?官方提供了一些接口可以查看springboot项目运行情况,只需要导入s ...
- 关于Task的认识
首先来说说 Task.Factory.StartNew这种方式来创建Task,这里的WaitAll()指的是等待所有Task执行完成,并且里面的Task参数(t1,t2)是异步的,先以匿名委托方式 s ...
- Net_Prop 之 CTerrorPlayer 属性
Sub-Class Table (1 Deep): DT_TerrorPlayer Sub-Class Table (2 Deep): DT_CSPlayer Sub-Class Table (3 D ...
- Java 设计模式六原则及23中常用设计模式
一.设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接 ...