本文主要是介绍linux+vm虚拟机+mysql+redis,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一.拟机Linux配置Ip
1.虚拟机网络配置
![Attachment](/upload/202207/17/202207170215101675.png)
2.进入虚拟机查看IP ip addr
3.进入网卡根目录下
cd /etc/sysconfig/network-scripts/
4.编辑网卡配置文件
vim或者vi ifcfg-ens33
原始文件:
5.修改后
![Attachment](/upload/202207/17/202207170215102305.png)
6.保存并退出
wq
7.刷新网络服务
service network restart (刷新网络服务)
8.再次查看ip
ip addr
9.最好是重启虚拟机;
还有种方法就是 onboot 参数设置成 yes
重启网卡 service network restart 即可
参数解析:
BOOTPROTO=none #设置网卡静态配置ip地址 none 静态配置(手工指定ip) dhcp 表示虚拟机动态获得ip地址
NAME=ens33 #网卡的设备名为ens33
DEVICE=ens33 #网卡的设备名为ens33
ONBOOT=yes #开机自动启用网卡--》自动激活网卡
IPADDR=192.168.0.178 #ip地址
PREFIX=24 #子网掩码
#NETMASK=255.255.255.0 #子网掩码
GATEWAY=192.168.0.1 #网关
DNS1=114.114.114.114 #指定首选DNS服务器
![Attachment](/upload/202207/17/202207170215103086.png)
二.开启远程访问,远程ssh
在/etc/ssh/sshd_config 文件中,将permitRootLogin no|yes设置为允许root用户远程访问
/etc/init.d/sshd start 启动ssh服务
/etc/init.d/sshd stop关闭服务
启动:
service sshd start
三.安装Vim
yum -y install vim*
四:安装MySql
1.检查是否安装MySql
rpm -qa | grep mysql
2.卸载
yum remove mysql mysql-server mysql-libs mysql-server
3.搜索mysql文件
find / -name '*mysql*'
4.安装wget
yum -y install wget
上传文件: https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.16-linux-x86_64-minimal.tar.xz
进入文件夹解压:
tar -xvf mysql-8.0.16-linux-x86_64-minimal.tar.xz
重命名:
mv mysql-8.0.16-linux-x86_64-minimal mysql
创建日志文件:
mkdir mysql/log
创建用户组:
groupadd mysql
useradd -g mysql mysql
修改权限:
chown -R mysql:mysql mysqlsoft
![Attachment](/upload/202207/17/202207170215103570.png)
设置mysql参数
配置mysql参数(将原文件内容全部删除)
(输入i进入编辑模式,esc退出编辑,‘:wq’保存退出,’:q’退出,':q!'强制退出)
vi /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
server-id = 1
port = 3306
basedir = /myfile/mysqlsoft/mysql
datadir = /myfile/mysqlsoft/mysql/data
pid-file = /myfile/mysqlsoft/mysql/mysql.pid
socket = /tmp/mysql.sock
[mysqld_safe]
log-error=/myfile/mysqlsoft/mysql/log/error.log
配置全局变量:
vi /etc/profile
#mysql
MYSQL_HOME=/myfile/mysqlsoft/mysql
PATH=$PATH:$MYSQL_HOME/bin:$MYSQL_HOME/support-files
export PATH MYSQL_HOME
生效配置文件:
source /etc/profile
安装依赖包:
yum install libaio #(碰到输入y :Is this ok [y/d/N]: y)
初始化数据库:
mysqld --initialize --user=mysql
注意: 8.0.2以上版本如果要设置忽略大小写请在此步添加–lower-case-table-names=1,修改配置文件无效
切换到mysql用户:
su - mysql
mysql.server start
登录数据库修改密码:
mysql -u root -p
alter user USER() identified by 'Zyz123456';
启动停止:
mysql.server start
mysql.server stop
修改密码的方式:
1.进入 vim etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
server-id = 1
port = 3306
basedir = /myfile/mysqlsoft/mysql
datadir = /myfile/mysqlsoft/mysql/data
pid-file = /myfile/mysqlsoft/mysql/mysql.pid
socket = /tmp/mysql.sock
#免密码登录
#skip-grant-tables
[mysqld_safe]
log-error=/myfile/mysqlsoft/mysql/log/error.log
保存退出
重启一下服务:
mysql.server restart
mysql -u root -p
直接回车进入
执行语句
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
刷新权限
flush privileges;
记得注释掉免密码登录
重启一下服务:
mysql.server restart
完成
mysql开启远程登录
先开放3306端口:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙:
firewall-cmd --reload
进入数据库
1.use mysql
查看权限
2. select host,user from user;
开启root用户登陆权限
update user set host = '%' where user = 'root';
3.授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; # 授权
4.刷新权限
FLUSH PRIVILEGES;
mysql开机启动
1启动mysql
service mysql start
2、这个时候我们只是单纯的启动了mysql,并没有做到开机启动
我们设置开机启动需要将mysql.server 文件复制到 /etc/rc.d/init.d/ 目录下mysql 文件 我们的mysql.server 文件一般都在安装的根目录下的 support-files 目录下
进入目录 拷贝:
cp /support-files/mysql.server /etc/rc.d/init.d/mysql
进入拷贝的目录赋予权限:
cd /etc/rc.d/init.d/
chmod +x mysql
添加服务:
chkconfig --add mysql
查看服务列表:
chkconfig --list
看到3、4、5状态为开或者为 on 则表示成功。 如果是 关或者 off 则执行一下:
chkconfig --level 345 mysqld on
![Attachment](/upload/202207/17/202207170215104200.png)
mysql新增用户:
语句创建
CREATE USER '用户'@'localhost' IDENTIFIED BY '密码';
查看用户
select host,user from user;
更新用户登陆权限
update user set host = '%' where user = 'root';
3.授权(必须要授权,不授权连接不上)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
4.刷新权限
FLUSH PRIVILEGES;
问题:
1.记得开启端口。
2.用dbeaver链接的时候不允许检索公钥?设置允许即可
![Attachment](/upload/202207/17/202207170215104825.png)
防火墙相关操作:
* systemctl start firewalld 启动
* systemctl status firewalld 查看状态
* systemctl stop firewalld 停止
* systemctl disable firewalld 禁用
* firewall-cmd --reload 重新加载配置
* firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
* firewall-cmd --zone= public --remove-port=80/tcp --permanent 删除
Redis安装
一、下载并解压Redis
1、执行下面的命令下载redis:
wget https://download.redis.io/releases/redis-6.2.6.tar.gz
2、解压redis:
tar xzf redis-6.2.6.tar.gz
3、移动redis目录,一般都会将redis目录放置到 /usr/local/redis目录:
mv redis-6.2.6 /usr/local/redis
二、编译并安装redis
1、进入redis安装目录,执行make命令编译redis:
cd /usr/local/redis
make
等待make命令执行完成即可。
如果执行make命令报错:cc 未找到命令,原因是虚拟机系统中缺少gcc,执行下面命令安装gcc:
yum -y install gcc automake autoconf libtool make
如果执行make命令报错:致命错误:jemalloc/jemalloc.h: 没有那个文件或目录,则需要在make指定分配器为libc。执行下面命令即可正常编译:
make MALLOC=libc
make命令执行完,redis就编译完成了。
2、执行下面命令安装redis,并指定安装目录
make install PREFIX=/usr/local/redis
至此,redis即安装成功。
三、启动redis
1、进入redis安装目录,执行下面命令启动redis服务
启动命令
cd /usr/local/redis
./bin/redis-server redis.conf
查看状态
systemctl status redis
关闭服务
进入安装目录
cd /usr/local/redis
./bin/redis-cli shutdown
此时,可以看到redis服务被成功启动:
但这种启动方式不能退出控制台,如果退出,那么redis服务也会停止。如果想要redis以后台方式运行,需要修改redis的配置文件:redis.conf。将该配置文件中的daemonize no改为daemonize yes即可:
修改完成后,重新执行启动命令启动redis,然后通过下面命令查看redis进程,可以发现redis服务已经被启动了:
ps -ef | grep redis
2、通过redis-cli测试redis是否可用,在redis安装目录执行下面命令:
./bin/redis-cli
此处我们通过下面命令随便set一个字符串类型的值,key是test,value是hello:
set test hello
然后通过下面命令get出test这个key的value值:
get test
测试没有问题,至此,redis在我们的Linux服务器上就已经安装完成了。
开机启动:
1.新建脚本
vim /etc/init.d/redis
2.脚本(复制的时候要注意,vim可能粘贴不完整,前两行缺失)
#!/bin/bash
# chkconfig: 2345 10 90
# description: Start and Stop redis
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server #对应你自己的配置地址
REDIS_CLI=/usr/local/redis/bin/redis-cli #对应你自己的配置地址
PIDFILE=/var/run/redis.pid
CONF="/usr/local/redis/redis.conf" #对应你自己的配置地址
AUTH="1234"
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed."
else
echo "Starting Redis server..."
$EXEC $CONF
fi
if [ "$?"="0" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE exists, process is not running."
else
PID=$(cat $PIDFILE)
echo "Stopping..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
sleep 2
while [ -x $PIDFILE ]
do
echo "Waiting for Redis to shutdown..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
exit 1
esac
3.权限
chmod 755 /etc/init.d/redis
4.启动
/etc/init.d/redis start
5.设置开机启动
cd /etc/init.d/
chkconfig redis on
6.查看自动启动的服务:
chkconfig --list
密码设置:
进入安装目录:
cd /usr/local/redis
vim redis.conf
支持远程连接:
cd /usr/local/redis
vim redis.conf
把protected-mode yes改为protected-mode no即可
常见问题:
1:授权
(error) NOAUTH Authentication required. 设置了密码没权限操作,先进入cli
auth 密码 再次进行操作
./bin/redis-cli
2.防火墙
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload
这篇关于linux+vm虚拟机+mysql+redis的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!