MySQL基础环境_安装配置教程(Windows7 64或Centos7.2 64、MySQL5.7)
- 安装包版本
1) VMawre-workstation版本包
地址:
https://my.vmware.com/web/vmware/details?downloadGroup=WKST-1411-WIN&productId=686&rPId=20814
包名:VMware-workstation-full-12.5.7.20721.exe
2) Windows版本包
地址:https://www.microsoft.com/zh-cn/software-download/windows7
包名:
3) Centos版本包
地址:http://vault.centos.org/7.2.1511/isos/x86_64/
包名:CentOS-7-x86_64-DVD-1511.iso
4) JDK版本包
地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html
包名:jdk-8u144-linux-x64.tar.gz
5) MySQL版本包
Windows版
地址:https://www.mysql.com/downloads/
包名:mysql-5.7.20-winx64.zip
Linux版
地址:https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
包名:mysql57-community-release-el7-11.noarch.rpm
- 安装软件包
2.1. 安装前说明
先准备好需要安装的程序包文件,比如:Linux、JDK、MySQL数据库安装包等,把你要搭建环境所需要的程序包下载好并上传到对应的Linux机器上。程序包文件统一放到目录 /usr/local/src下。
下载对应的程序包时,先确认系统的位数,这样就可以确认需要下载什么位数的程序包,比如:系统是32位,就安装32位的程序包,系统是64位,就安装64位的程序包。基础环境的安装参考下面的说明步骤,对应的IP、端口号、路径等需要根据你机器的实际情况来修改。当显示的是x86_64,则表明是64位的系统,否则是32位的系统。
uname -a
2.2. 安装VMwawre-workstation12
2.2.1. 安装VMwawre-workstation12
选择好安装路径,默认安装直到完成就好。
2.2.2. 安装虚拟机
2.2.2.1. 新建虚拟机
选择安装对应的vm workstation版本
2.3. 安装CentOS7.2
2.3.1. 加载CentOS ISO文件
编辑虚拟机->硬件(CD/DVD(IDE))->使用ISO镜像文件,选择对应的CentOS的ISO包,选择好后,保存并启动该虚拟机,之后进入安装CentOS界面。
2.3.2. 安装CentOS7.2
选择安装CentOS7.2并选择enter键
2.3.2.1. 选择语言集
2.3.2.2. 编辑各模块信息
2.3.2.2.1. 编辑时间模块
2.3.2.2.2. 配置键盘模块
2.3.2.2.3. 其他项配置(自动分区、禁用kdump)
2.3.2.2.4. 修改root用户密码
2.3.2.2.5. 启用网卡(ifup命令)
因安装的是CentOS6,所以会出现找不到repo的问题,最后发现要打开网卡。
2.3.2.3. 重启CentOS7
shutdown -r now
安装系统后,重启系统,登陆后,执行yum list命令。
2.3.3. 进行基础设置
2.3.3.1. 启动网卡
cd /etc/sysconfig/network-scripts
ifup ifcfg-ens160
yum -y install net-tools.x86_64
2.3.3.2. 安装wget
rpm -qa|grep wget 如果没有显示内容,说明没有安装wget命令
yum -y install wget
2.3.3.3. 替换yum源
cd /etc/yum.repos.d/
cp CentOS-Base.repo CentOS-Base.repo.backup
#下载CentOS7的yum 源
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
#将163yum源替换原来的yum源
mv -f CentOS7-Base-163.repo CentOS-Base.repo
#生成yum缓存并完成yum源的替换
yum clean all
yum makecache
2.3.3.4. 安装vim
yum -y install vim
2.3.3.5. 关闭防火墙
#关闭防火墙 如果为enabled,则需要关闭。
/usr/sbin/sestatus -v
#关闭selinux
vim /etc/selinux/config
SELINUX=disabled
#禁用系统防火墙
systemctl disable firewalld
systemctl stop firewalld
systemctl status firewalld
2.3.3.6. 安装其他命令
安装htop dstat nload bmon telnet dos2unix
#安装epel
rpm -ivh epel-release-7-9.noarch.rpm
#安装htop dstat nload bmon
yum -y install htop dstat nload bmon dos2unix
2.4. 安装JDK1.8
2.4.1. 安装JDK1.8
cd /usr/local/src/
tar -zxvf jdk-8u144-linux-x64.tar.gz -C /usr/local/
cd /usr/local/
#更改jdk文件名称
mv jdk1.8.0_144 jdk1.8
#更改所属的用户和组
chown -R root:root jdk1.8
2.4.2. 配置java环境变量
vim /etc/profile或修改.bash_profile文件
#新增以下配置想到/etc/profile文件中
#JDK1.8
JAVA_HOME=/data/local/java
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#LD_LIBRARY_PATH=/opt/apr1.5/lib
export JAVA_HOME PATH CLASSPATH LD_LIBRARY_PATH
#优化tomcat8需要配置该项
#export LD_LIBRARY_PATH=/opt/apr1.5/lib
#让配置文件生效 source /etc/profile
2.4.3. 修改java.security文件
#启动tomcat出现下列问题的解决办法
INFO: Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [24,790] milliseconds.
打开$JRE_HOME/lib/security/java.security这个文件,找到下面的内容:
securerandom.source=file:/dev/random
替换成
securerandom.source=file:/dev/./random
#通过javac -version及 java -version 命令检查jdk安装是否成功
2.5. 安装MySQL5.7
2.5.1. Windows7中安装MySQL5.7
2.5.1.1. 访问下载页面
地址:https://www.mysql.com/downloads/
包名:mysql-5.7.20-winx64.zip
2.5.1.2. 选择对应版本
因我的服务器是windows,所以,下载支持windows环境的mysql版本
2.5.1.3. 进入下载页面
点击Download按钮后,进入下载页面
2.5.1.4. 安装和配置MySQL
#解压缩安装包文件到具体目录
路径为:D:\MySQL5.7
配置环境变量:
MYSQL_HOME=D:\MySQL5.7;
path=%MYSQL_HOME%\bin;
#进入mysql的bin目录,以管理员方式打开doc窗口,并运行安装mysql的命令
#安装mysql
my.ini文件配置如下:
2.5.1.5. 初始化MySQL
mysqld --initialize-insecure
#卸载服务
mysqld -remove
2.5.1.6. 执行安装MySQL命令
mysqld -install MySQL --defaults-file="D:\MySQL5.7\my.ini"
2.5.1.7. 启动和停止MySQL
net start msyql
net stop mysql
2.5.1.8. 设置MySQL用户密码
#首次访问mysql,不用密码直接访问
mysql -u root -p
直接回车
#修改root用户密码
set password for root@localhost=password(‘123456’);
flush privileges;
exit;
2.5.1.9. 解决root用户无法访问MySQL的问题
#访问mysql,如果出现如下错误,需要修改配置文件my.ini
在[mysqld]项下加入 skip-grant-tables,之后从重启动mysql服务
#重启mysql服务后登陆mysql数据库
net stop mysql
net start mysql
mysql -u root -p
回车后,输入密码:123456
show databases;
2.5.2. CentOS7中安装MySQL5.7
2.5.2.1. 数据库目录结构说明
配置文件路径 /etc/my.cnf
日志文件路径 /var/log/mysqld.log
mysql启动脚本 /usr/lib/systemd/system/mysqld.service
socket文件路径 /var/lib/mysql/mysql.sock
pid文件路径 /var/run/mysqld/mysqld.pid
2.5.2.2. 卸载MariaDB
rpm -qa |grep maria
yum remove maraidb-libs -y
2.5.2.3. 访问MySQL官方网站
下载地址:https://dev.mysql.com/downloads/file/?id=470281
包名:mysql57-community-release-el7-11.noarch.rpm
2.5.2.4. 下载安装包到Linux
进入文件存放路径
cd /usr/local/src
wget https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
2.5.2.5. 下载支持rpm方式安装MySQL的yum源
yum localinstall mysql57-community-release-el7-11.noarch.rpm
2.5.2.6. 检查MYSQL的yum源
检查MySQL的yum repo源是否可用
yum repolist enabled |grep "mysql.*-community.*"
2.5.2.7. 以yum方式安装MySQL
安装MySQL
yum -y install mysql-commuinty-server
如上图提示,则表示安装MySQL成功。
2.5.2.8. 启动MySQL服务
启动MySQL服务
systemctl start mysqld
2.5.2.9. 设置开机启动
设置开机自动启动
systemctl enable mysqld
systemctl daemon-reload
2.5.2.10. 设置MySQL的root密码
获取登录MySQL的root用户临时密码
grep 'temporary password' /var/log/mysqld.log
利用临时密码,访问MySQL
alter user 'root'@'localhost' identified by 'chineseA@123/#';
[root@centos7129 opt]# mysql -uroot -p
Enter password: 临时密码
mysql> alter user 'root'@'localhost' identified by 'chineseA@123/#';
更改密码策略
mysql> show variables like '%password';
set global validate_password_policy=0;
set global validate_password_length=4;
再次重置密码
mysql> alter user 'root'@'localhost' identified by '123456';
新增1个test用户,可远程访问MySQL
mysql> grant all privileges on *.* to 'test'@'%' identified by '123456' with grant option;
2.5.2.11. 配置MySQL支持的字符集
在[mysqld]配置项中,添加支持utf-8编码
vim /etc/my.cnf
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
重启MySQL
systemctl restart mysqld
登录后出现如下错误:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
2.5.2.12. 重新设置MySQL的root密码(在第8步骤不成功时)
则在/etc/my.cnf的[msyqld]项中新增 skip-grant-tables
重启MySQL
systemctl restart mysqld
#mysql -uroot -p
Enter password:原密码
mysql>use mysql;
mysql>update user set authentication_string=password("123456") where user="root";
mysql>flush privileges;
mysql>exit;
然后再将/etc/my.cnf的[msyqld]项中的skip-grant-tables注释
再重启MySQL
systemctl restart mysqld
如果出现该问题
failed: Access denied for user 'root'@'192.168.0.129' (using password: YES) at ./mysqlreport line 249
可先在配置文件
/etc/my.cnf中
[client]
host=localhost
user=xxx
password=xxx
重启数据库后
在执行该语句
mysql>INSERT INTO `user` VALUES ('%','root','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'mysql_native_password','*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9','N',LOCALTIME(),NULL,'N');
mysql>flush privileges;
之后再注释以下配置项
/etc/my.cnf中
[client]
host=localhost
user=xxx
password=xxx
2.5.2.13. 解决远程工具无法连接到MySQL服务器
在远程linux窗口中,使用root用户登录mysql
mysql -uroot -p
切换到mysql数据库
执行语句并进行更新操作
update user set host=’%’ where user=’root’;
flush privileges;