踩坑mysql5.7
前言
梦回刚学计算机的时候,装软件一装就是一天,中间不知道踩了多少坑,一直没有记录下来。今天又在centos上安装mysql,我以为我可以很顺利的装好,但事实是学而不思,思而不学都是不行的。
所以总结这就来了,还有各种踩过的坑~
yum源下载还是软件包下载?
都可以,根据情况而定
有自定义需求,通过软件包安装
网路yum源配置(必须配置)
网络模式为桥接模式,物理机能上网,虚拟机就能上网
使用之前先ping baidu.com看能否ping通
wget命令刚开始是没有的,可以先用自带的yum源直接进行安装()
wget -O /etc/yum.repos.d/local.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all && yum makecache
yum install -y epel-release
yum clean all && yum makecache
如何用yum安装指定版本mysql(可选)
MySQL安装之yum安装 - Brian_Zhu - 博客园 (cnblogs.com)
如何用mysql软件包安装mysql(可选)
优势是什么?
能自定义安装文件
下载速度慢?
通过IDM下载
官网下载客户端,简单配置即可
Internet Download Manager: The fastest download accelerator
如何使用?
最强下载神器IDM的安装和使用 - 知乎 (zhihu.com)
1、官网下载指定版本mysql
https://dev.mysql.com/downloads/mysql/
64位
2、解压安装
收先使用Xftp将压缩包传输进入虚拟机内部,使用命令进行解压
tar -xvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
mv -v mysql-5.7.22-linux-glibc2.12-x86_64 /usr/lcoal/mysql
3、创建用户和组
groupadd mysql
useradd -r -g mysql mysql
4、将安装目录所有者及所属组改为mysql ,这个根据自己的目录来
chown -R mysql.mysql /usr/local/mysql
5、在mysql目录下创建data文件夹
mkdir data
6、安装依赖
#yum -y install numactl
#yum install libaio
7、初始化数据库
如果缺包,那就缺什么下什么
因为是网络yum源,下载还是很快的
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
8、配置my.cnf文件
vi /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
9、将mysql加入到服务,设为开机启动,然后启动mysql
#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
#chkconfig mysql on
#service mysql start
10、设置环境变量:
#export PATH=$PATH:/usr/local/mysql/bin
使用这种方法,只会对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效,只是临时生效。
加入export PATH=$PATH:/usr/local/mysql/bin即可
11、设置密码
mysql -uroot -p
12、设置权限
use mysql;
#update user set authentication_string=password('你的密码') where user='root';
或者#set password=password("root");
#flush privileges;
#exit
通过navicat连接centos中的mysql
创建远程登陆用户并授权
use mysql;
update user set host=‘%’ where user = ‘root’;
flush privileges;
–skip-grant-tables
去掉my.cnf里的这个选项,并重启
去掉之后