• VM虚拟机部署Linux(CentOS6.5)环境及JDK+Tomcat+ MySQL-5.7


    部署环境是测试/运维永不过时的技能。

    1、安装centos(下载centos地址: 选择学习版本,我选择的是6.5,现在可能都是7版本了)

    选择CentOS-6.5-x86_64-bin-DVD1.iso安装,学习使用操作linux系统;

    2、安装xftp (问度娘,顺带把破解码也找到)

    选择破解版xftp,安装时输入破解码,使用主机连接虚拟机,传输文件修改权限使用;

    3、安装xshell (同上)

    选择破解版xshell,安装时输入破解码,挂起虚拟机,连接linux命令操作;

    4、解压java及配置jdk环境

    通过xftp工具连接虚拟机linux,传输文件到指定目录/usr/local/src/ ;
    
    /local/src/    #切到对应目录下并下载JDK
    
    tar zxvf jdk包名.gz.tar   #解压压缩包
    
    ./jdk-7u79-linux-i586.bin     #执行文件
    
    mv jdk1.7  /usr/local/   #移动解压后的文件到指定目录/usr/local/ ;
    
    vim /etc/profile    #修改环境变量,在文件的最后一行添加下面的内容(注意在路径后面,不再加任何斜杠):
    
    JAVAHOME=/usr/local/jdk1.7
    
    JAVA_BIN=/usr/local/jdk1.7/bin
    
    JRE_HOME=/usr/local/jdk1.7/jre
    
    PATHATH:/usr/local/jdk1.7/bin:/usr/local/jdk1.7/jre/bin
    
    source /etc/profile         #让修改的环境变量马上生效
    
    java -version               #查看安装的java的版本以及对JDK安装是否成功给予验证
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    5、解压tomcat及配置tomcat环境

    通过xftp工具连接虚拟机linux,传输文件到指定目录/usr/local/src/ ;
    
    cd  /usr/local/src/   #切换到src目录
    
    tar zxvf tomcat.gz.tar   //解压压缩包
    
    mv tomcat /usr/local/  //移动解压后的文件到指定目录/usr/local/
    
    cp -p /usr/local/tomcat/bin/catalina.sh  /etc/init.d/tomcat    #把tomcat的启动文件拷贝到init.d文件夹下的tomcat下
    
    vim /etc/init.d/tomcat   //第二行加入          #编辑启动文件,设置相应环境变量;
    
    # description: tomcat server init script
    
    # Source Function Library
    
    JAVA_HOME=/usr/local/jdk1.7/
    
    CATALINA_HOME=/usr/local/tomcat
    
    //**下面内容设置tomcat开机启动  如果不能 添加到服务列表,请将上述内容编辑到/etc/init.d/tomcat 
    
    chmod 755 /etc/init.d/tomcat    #对tomcat文件授予权限
    
    chkconfig --add tomcat    #添加tomcat服务到chkconfig列表中
    
    chkconfig tomcat on  #设置tomcat服务在开机时就启动,
    
    //同上的另一个命令:chkconfig --level 345 tomcat on
    
    service tomcat start  #启动tomcat的服务,
    
    service  tomcat  restart  #重启tomcat服务
    
    service tomcat stop  #停止tomncat服务
    
    浏览器输入  http://ip:80  可以看到tomcat的欢迎页;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37

    配置tomcat端口

    更改默认启动端口:vim conf/server.xml 
    
    Connector port=“8080”  改为 Connector port="80"
    
    • 1
    • 2
    • 3

    配置tomcat-users.xml:

    cd  /usr/local/tomcat/conf  #进入tomcat配置文件目录
    
    vim  tomcat-users.xml    #配置tomcat用户ole rolename="manager-status"/>
    
      <role rolename="manager-gui"/>
    
      <user username="tomcat" password="tomcat" roles="manager-status,manager-gui
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    找到tomcat-users,去掉注释的role和user,增加manager-gui,manager-status两个role,tomcat管理员user;

    配置新虚拟主机

    找到</Host>下一行插入新的<Host>内容如下:
    
    <Host name="www.123.cn" appBase="/data/tomcatweb"      #虚拟主机名称,应用程序存放位置;
    
    unpackWARs="false" autoDeploy="true" xmlValidation="false"
    
    xmlNamespaceAware="false">
    
    <Context path="" docBase="./" debug="0" reloadable="true" crossContext="true"/>
    
    </Host>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    重启:service tomcat stop; service tomcat start

    6、解压mysql配置数据库用户及权限 cd /usr/local/mysql 只在安装目录下操作如下命令

    首先检查linux环境mysql有没有安装过或有mysql相关文件,还有系统自带安装包,都要删除!

    • cd /usr/local/src/ #切换到mysql安装文件目录tar zxvf mysql安装包.tar.gz 二进制安装包
    • mv mysql解压文件
    • /usr/local/mysql # 移动到指定目录
    • groupadd -g mysql #创建用户组
    • groupdel [-r] 删除用户组带参数即删除相关文件
    • useradd -r -g mysql mysql #创建用户组用户
    • userdel [-r] 删除用户,带参数-r即删除用户相关文件
    • yum install -y gcc # 下载gcc #如果系统已安装就省略,gcc-cc++ 同理
    • yum list | grep ncurses 再 yum -y install ncurses-devel #可先省略,当cmake命令报错没有找到依赖包的时候,再安装
    • cd /usr/local/mysql #进入mysql安装目录
    • mkdir -p /data/mysqldb #创建data目录 #可以建在root根目录下
    • chown -R mysql:mysql data #授权
    • /usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysqldb #初始数据库但是仍会报错:/usr/local/mysql/bin/mysqld_safe --user=mysql --datadir=/usr/local/mysql/data & #启动绝对路径
    • 在拷贝服务之前,先编辑vim support-files/mysql.server 指定[datadir、basedir]
    • 再编辑 vim support-files/my-default.cnf 指定[datadir\basedir]
    • 注:vim /etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled;Source /etc/selinux/config 使之生效;
    • cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf #复制文件到指定目录,当前support文件的上级目录
    • cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld #复制服务到启动目录
    • chmod 777 /etc/init.d/mysqld #授权,权限 777>755>700>…
    • vim /etc/init.d/mysqld #修改datadir路径 #这步已经上面完成操作了;
    • chkconfig --add mysqld #添加mysql到服务列表
    • chkconfig mysqld on #设置开机自动启动
    • service mysqld start #开启mysql
    • [root@localhost /] ./bin/mysqladmin -u root -p password #直接用mysqldamin修改mysql用户root的密码:
    • mysql -uroot -p 登录mysql 但是密码错误或没有
    • mysqladmin -uroot -p password ‘newpassword’
    • Enter password:
    • mysqladmin: connect to server at ‘localhost’ failed
    • error: ‘Access denied for user ‘root’@‘localhost’ (using password: YES)’
    • /etc/init.d/mysql stop
    • mysqld_safe --skip-grant-tables --skip-networking & #如没有command not found 要ln -s设置映射
    • mysql -u root mysql
    • mysql> UPDATE user SET Password=PASSWORD(‘newpassword’) where USER=‘root’;
    • mysql> FLUSH PRIVILEGES;
    • mysql> quit
    • //mysql5.7 数据库中user表没有password字段
    • /etc/init.d/mysql restart
    • mysql -uroot -p
    • Enter password: <输入新设的密码newpassword>
    • 但是select * from user 没有password字段!
    • 2016-06-21T09:19:59.138299Z 0 [ERROR] Can’t read from messagefile ‘/usr/share/mysql/english/errmsg.sys’
    • ps -ef |grep 进程名 #查看进程
    • root权限 杀死进程: kill 进程编号

    7、配置windows系统访问linux环境

    设置windows主机浏览器访问虚拟机linux #centOS7没有iptables要先安装,用的是firewall

     vim    /etc/sysconfig/iptables  #修改防火墙配置文件 #在centOS7.0找不到这个iptables'文件的内容;
    
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT  #开放端口8080
    
    /etc/init.d/iptables restart    #重启防火墙CentOS 7 
    
    firewall-cmd --list-ports #查看防火墙开放端口
    
    使用命令firewall来控制端口:firewall-cmd --zone=public --add-port=8081/tcp --permanent
    
    删除一个端口:firewall-cmd --zone=public --remove-port=88/tcp --permanent
    
       --add-port=80/tcp  #添加端口,格式为:端口/通讯协议
    
       --permanent   #永久生效,没有此参数重启后失效
    
    firewall-cmd --reload 重启防火墙
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    提示修改的配置行failed

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #去掉RH-Fierwall-1-

    #重启防火墙之后提示ok

    开放数据库mysql端口

    -A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT

    8、部署linux应用环境及windows访问

    重启:service tomcat stop; service tomcat start
    
    vim /data/tomcatweb/111.jsp //内容如下:
    
    Now time is: <%=new java.util.Date()%>
    
    curl -xlocalhost:8081 www.123.cn/111.jsp
    
    Now time is: Tue Oct 22 11:43:02 CST 2013
    
    若在虚拟机上做实验,让windows操作系统的浏览器去访问虚拟机,需要先在windows的hosts文件中添加虚拟机
    
    hosts文件路径为:C:\Windows\System32\drivers\etc下的hosts文件,通过记事本打开,添加ip地址和域名
    
    # localhost name resolution is handled within DNS itself.
    
    #127.0.0.1       localhost
    
    #::1             localhost
    
    192.168.109.128  www.123.cn
    
    Ps:vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled
    
    i 进入文件可输入状态,ctrl+C 暂停编辑, dd连续两次删除光标所在行 
    
    :q 退出不保存 :wq 保存退出 :xx!后面加上!表示强制执行
    
    下载yum命令       yum install -y man
    
    cd / 回到root目录   &   cd .. 回到上级目录
    
    Mysql 命令错误提示:command not found   知道命令如下绝对路径:/usr/local/mysql/bin/mysql,
    
    我们则可以这样执行命令:ln -s /usr/local/mysql/bin/mysqld   /usr/bin   创建软链接;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
  • 相关阅读:
    【数据结构练习】二叉树相关oj题集锦三
    神经网络模型的工作原理,神经网络模型应用实例
    Linux时间管理:命令与脚本的完美结合
    遇到Bug漏测,不能总想着甩锅吧
    ThinkPHP6综合业务管理系统
    数据一致性:双删为什么要延时?
    小狐狸付费创作系统如何接入Midiourney接口并使用KEY教程
    three.js之缓冲类型几何体顶点
    多寄存器内存访问指令的寻址方式
    ORB-SLAM2 ---- ExtractorNode::DivideNode函数
  • 原文地址:https://blog.csdn.net/u011466469/article/details/119888633