目前搬我以前的笔记,每个人做笔记方式都不一样,看别人的风格,生成自己的风格 1.linux安装软件和redis学习
jdk --- java开发运行环境
Tomcat - WEB程序的服务器
Mysql -- 持久化存储数据
Redis -- 数据库 ,和MySQL原理不同 //linux通用软件安装流程:(jdk安装)
A:上传安装包
CRT -- Alt+p 打开 ftp上传直接拖拽文件上传,到当前用户目录下
mkdir
将需要共享的文件mv到usr共享目录
mv jdkxxx /usr/local/jdk
B:查询安装程序中是否安装过jdk
查询:rpm -qa | grep -i jdk
卸载:rpm -e --nodeps 程序名
c:安装程序
解压缩:
tar -zxvf xxx
D:进行相关配置(环境变量)
1)编辑vi /etc/profile
2)export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
3)重新加载配置文件
source /etc/profile
E:测试
java -version
java
javac //Tomcat安装:
A:
B:查询安装程序中是否安装过tomcat
查询:rpm -qa | grep -i tomcat
卸载:rpm -e --nodeps 程序名
c:安装程序
解压缩:
tar -zxvf xxx
D:进行相关配置(环境变量)
问题:tomcat/bin/startup.sh --开启tomcat 但是无法访问,开启防火墙
解决:
方案1:service iptables stop //start开启
方案2:更改防火墙配置文件,放行8080端口(复制22的放行命令改成8080)
vi /etc/sysconfig/iptables
重启防火墙:
service iptables restart E:测试
http://ip:8080 //MySql安装
A:
B、判断当前程序是否安装过,如果安装过,进行卸载
查询:rpm -qa | grep -i MySQL
卸载:rpm -e --nodeps 程序名
C:安装程序
1)解压缩:
tar -xvf mysql.tar
2)安装:
服务端 rpm -ivh mysql-service.rpm
客户端 rpm -ivh mysql-client.rpm
3)开启mysql服务
service mysql start
设置密码:(在安装时会有提示,直接复制下来设置,需先开启服务)
/usr/bin/mysqladmin -u root password '新密码'
4)本地访问
mysql -uroot -p密码
D、进行远程连接相关配置
1)防火墙放行
vi /etc/sysconfig/iptables
2)、授权
登陆 MySQL
create user 'root'@'%' identified by '1234'; ---- root 用户在其他主机可以以 1234 密码登陆
grant all on *.* to 'root'@'%' with grant option; ---- root 用户在其他主机连接时,具有所有权限
all --- 增删改查等所有权限
*.* --- 所有库以及所有表
E:测试
远程sqlYog访问 2.Redis概述
A.数据库分类
1.普通Sql(关系型数据库)
mysql oracle
2.NoSQL(No Only SQL 非关系型数据库)
redis Hbase mangoDB
B.redis安装
看下面讲义里的吧! 1、Linux 操作系统软件安装以及redis 学习
JDK ----- Java开发运行环境
Tomcat -- WEB程序的服务器
MySQL --- 持久化存储数据
Redis --- 和 MySQL 类似,也是数据库,但是原理不同 Linux 上通用的软件安装流程:
A、上传安装包到 Linux(也可以从网络下载)
B、判断当前程序是否安装过,如果安装过,进行卸载
C、安装该程序
D、进行相关配置
E、测试 2、Linux 下软件安装 ----- JDK
A、上传安装包到 Linux(也可以从网络下载)
1)、CRT ----> alt + p ---> 打开上传窗口 ----> 拖拽文件到窗口
2)、文件上传到了当前用户目录下 /root
3)、将文件剪切到 /usr 目录下(被不同用户共享)
mkdir /usr/local/jdk
mv jdk-xxx.xx.gz /usr/local/jdk
B、判断当前程序是否安装过,如果安装过,进行卸载
rpm --- redhat packet manager
-q ---- query
-a ---- all
-e ---- erase 卸载
-i ---- install 安装
-v ---- 显示细节
-h ---- 列出标记
--nodeps ---- 忽略关联性(有的程序是依赖于 JDK的) 查询:rpm -qa | grep -i jdk
卸载:rpm -e --nodeps 程序名 C、安装该程序
解压缩:
tar -zxvf xxx D、进行相关配置(环境变量)
1)、编辑:vi /etc/profile
2)、export JAVA_HOME=JDK安装路径
export PATH=$JAVA_HOME/bin:$PATH
3)、重新加载配置文件
source /etc/profile E、测试
java -version
java
javac 3、Linux 下软件安装 ----- Tomcat
A、上传安装包到 Linux(也可以从网络下载)
1)、CRT ----> alt + p ---> 打开上传窗口 ----> 拖拽文件到窗口
2)、文件上传到了当前用户目录下 /root
3)、将文件剪切到 /usr 目录下(被不同用户共享)
mkdir /usr/local/tomcat
mv jdk-xxx.xx.gz /usr/local/tomcat B、判断当前程序是否安装过,如果安装过,进行卸载 查询:rpm -qa | grep -i tomcat
查询无结果,此步骤结束 C、安装该程序
解压缩:
tar -zxvf xxx D、进行相关配置(环境变量)
问题:
tomcat/bin/startup.sh ---- 开启Tomcat ,但是宿主机无法访问,因为有防火墙 解决:
方案1:service iptables stop ---- 关闭防火墙(不建议)
方案2:在防火墙配置文件中,放行 Tomcat 的 8080 端口
vi /etc/sysconfig/iptables
放行端口实现:
复制(案例:22端口)粘贴(yy p)
重启防火墙:
service iptables restart E、测试
宿主机浏览器:
http://虚拟机ip:8080 4、Linux 下软件安装 ----- MySQL
A、上传安装包到 Linux(也可以从网络下载)
1)、CRT ----> alt + p ---> 打开上传窗口 ----> 拖拽文件到窗口
2)、文件上传到了当前用户目录下 /root
3)、将文件剪切到 /usr 目录下(被不同用户共享)
mkdir /usr/local/jdk
mv jdk-xxx.xx.gz /usr/local/jdk
B、判断当前程序是否安装过,如果安装过,进行卸载
查询:rpm -qa | grep -i MySQL
卸载:rpm -e --nodeps 程序名 C、安装该程序
1、解压缩:
tar -xvf mysql.xxx.tar
2、安装
1)、安装 MySQL服务 rpm -ivh MySQL-server.xxxx.rpm
2)、安装 MySQL客户端 rpm -ivh MySQL-clinet.xxx.rpm
3)、开启MySQL 服务
service mysql start
设置root的登陆密码(安装服务时,有提示,复制即可)
/usr/bin/mysqladmin -uroot -p 新密码
4)、本地访问
mysql -uroot -p密码 D、进行远程连接相关配置
1)、防火墙放行
vi /etc/sysconfig/iptables
2)、授权
登陆 MySQL
create user 'root'@'%' identified by '1234'; ---- root 用户在其他主机可以以 1234 密码登陆
grant all on *.* to 'root'@'%' with grant option; ---- root 用户在其他主机连接时,具有所有权限
all --- 增删改查等所有权限
*.* --- 所有库以及所有表
E、测试
使用 宿主机的 SQLYog 测试即可 5、Redis概述
A、数据库分类:
类别1:普通SQL(关系型数据库)
举例: MySQL Oracle
特点:结构上,库表列,数据以行的方式体现
结构复杂
圈养 ----- 动物园 类别2:NoSQL(Not Only SQL) (非关系型数据库)
举例: redis Hbase mangoDB
特点:结构上,键:值(Map集合)
结构简单
散养 ----- 自然保护区 B、为什么需要 NoSQL?
WEB1.0:社交网站兴起之前, hao123 新浪新闻 铁血军事 .....
这些网站的数据是后台生成的,客户大多只是查询数据,增删改操作有限
WEB2.0:社交网站的兴起
客户除了查询数据,增删改的操作也比较多 WEB 2.0 时,关系型数据库压力变大:
1、高并发
2、大数据
3、高可用和高扩展 C、NoSQL 分类
键值对 ----- 一个大的 Map 集合 6、Redis安装
Linux 下软件安装
0、前提(联网情况下操作):
yum install gcc-c++ A、上传安装包到 Linux(也可以从网络下载)
1)、CRT ----> alt + p ---> 打开上传窗口 ----> 拖拽文件到窗口
2)、文件上传到了当前用户目录下 /root
3)、将文件剪切到 /usr 目录下(被不同用户共享) B、判断当前程序是否安装过,如果安装过,进行卸载
查询:rpm -qa | grep -i jdk
卸载:rpm -e --nodeps 程序名
C、安装该程序
1)、解压缩:
tar -zxvf xxx
2)、进入解压缩后的文件夹,进行编译
make
3)、安装
make PREFIX=redis路径 install
安装完成后,安装路径下有一个 bin
4)、启动服务
bin/redis-server
直接启动服务:redis挂起,阻塞了当前主线程,要设置 redis 服务为后台服务
启动操作的客户端
bin/redis-cli D、进行相关配置
1)、cp redis-3.0.7/redis.conf redis的安装目录下(和bin目录平级)
2)、vi redis.conf 将启动方式设置为后台启动
daemonize yes
注:修改端口在 redis.conf // port E、测试
启动: bin/redis-server redis.conf //在配置集群时可以放入bin目录里面,启动命令就不一样了,进入bin ./xxx redis.conf
访问: bin/redis-cli --raw //raw可以显示中文 F、简单使用
增: set 键 值(改:当键重复时,值会覆盖)
删: del 键
查: get 键,返回值
退出 quit //只是退出,
关闭: shutdown //关闭redis服务 7、Redis相关数据结构
A、字符串类型 --------- String ------ 普通字符串
B、散列类型 --------- hash表 ------ 哈希表类型
C、列表类型 --------- List列表 ----
D、集合类型
E、有序集合类型