安装之前大家一定要检查好各个版本问题 以免造成不兼容。
(一)下载所需安装包:
jdk-7u76-linux-x64.tar.gz
apache-tomcat-7.0.63.tar.gz
MySQL-server-5.1.73-1.glibc23.x86_64.rpm
MySQL-client-5.1.73-1.glibc23.x86_64.rpm
(二).安装jdk:
1.把安装文件放在/usr/local下
[root@localhost local]# tar -zxvf jdk-7u76-linux-x64.tar.gz
2.创建 vi /etc/profile 编辑环境变量sudo
export JAVA_HOME=/usr/local/jdk1.7.0_76
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
并执行:[root@localhost local]# source /etc/profile
3.验证 输入 javac -version出现提示信息
javac 1.7.0_76
cd .
4.执行 helloworld 小程序
在 /usr/local/test 下建立 HelloWorld.java
public class HelloWorld{
public static void main(String args[]){
HelloWorld hello=new HelloWorld();
hello.printHello();
}
private void printHello(){
System.out.println("hello!!!");
}
}
执行结果
[root@localhost test]# javac HelloWorld.java
[root@localhost test]# java HelloWorld
hello!!!
(三)TOMCAT的安装配置
#tar -zxvf apache-tomcat-7.0.63.tar.gz
测试Tomcat能否正常启动:
启动Tomcat:
# cd /usr/local/apache-tomcat-7.0.63/bin
# ./startup.sh
关闭Tomcat:
# cd /usr/local/apache-tomcat-7.0.63/bin
#./shutdown.sh
若看到以下信息:
Using CATALINA_BASE: /usr/local/apache-tomcat-7.0.63
Using CATALINA_HOME: /usr/local/apache-tomcat-7.0.63
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-7.0.63/temp
Using JAVA_HOME: /usr/jdk1.7.0_76
证明Tomcat7.0配置OK了!
然后打开浏览器,输入http://127.0.0.1:8080,如果您能看到一只可爱的小猫望着你的话, 那么恭喜您, tomcat也成了!
(四)MySQL的安装配置
安装包下载
从MySQL官网下载Community Server版的安装包:
下载地址:http://dev.mysql.com/downloads/mysql/#downloads
图1
平台选择Oracle & Red Hat Linux 4&5,下载下面两个安装包:
MySQL-server-5.1.73-1.glibc23.x86_64.rpm
MySQL-client-5.1.73-1.glibc23.x86_64.rpm
2) 文档参考
官方参考文档:
http://dev.mysql.com/doc/refman/5.6/en/linux-installation-rpm.html
3) 注意事项
安装时用户必须是root,在MySQL 安装时,会创建mysql 用户和mysql组。
3. 安装过程
下面的安装操作是在root用户下进行
1) 安装文件存放目录
创建存放目录:
[root@RH5 ~]# cd /tmp
[root@RH5 tmp]# mkdir mysql_setup
将安装文件放到该目录下面
2) 安装Server端
[root@RH5 ~]# cd /usr/local
[root@RH5 mysql_setup]# MySQL-server-5.1.73-1.glibc23.x86_64.rpm
Preparing... ########################################### [100%]
Giving mysqld 5 seconds to exit nicely
1:MySQL-server ########################################### [100%]
.......
3) 安装Client端
[root@RH5 mysql_setup]# rpm -ivh MySQL-client-5.1.73-1.glibc23.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-client ########################################### [100%]
4) 查看安装后创建的mysql用户和mysql组信息
[root@RH5 mysql_setup]# grep mysql /etc/group
mysql:x:157:
[root@RH5 mysql_setup]# grep mysql /etc/passwd
mysql:x:101:157:MySQL server:/var/lib/mysql:/bin/bash
4. 更改root密码以及允许远程IP连接
默认mysql服务不启动,可输入mysql命令验证,显示mysql服务没有启动
[root@RH5 mysql_setup]# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
启动mysql服务
[root@RH5 mysql_setup]# service mysql start
Starting MySQL. [确定]
[root@RH5 mysql_setup]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
查看临时密码:
[root@RH5 ~]#mysql -uroot
mysql> set password=Password('root');
Query OK, 0 rows affected (0.00 sec)
将root用户密码修改成root,在实际应用中,密码要设置更复杂些。
创建用户用来远程连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
(第一个itoffice表示用户名,%表示所有的电脑都可以连接,也可以设置某个ip地址运行连接,第二个itoffice表示密码)。
执行 flush privileges;命令立即生效
查询数据库的用户(看到如下内容表示创建新用户成功了)
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
5. 设置开机自启动
[root@RH5 mysql_setup]# chkconfig --list|grep mysql
mysql 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
0表示:表示关机
1表示:单用户模式
2表示:无网络连接的多用户命令行模式
3表示:有网络连接的多用户命令行模式
4表示:不可用
5表示:带图形界面的多用户模式
6表示:重新启动
MySQL服务器主要在级别3或5情况下运行,从上面的情况可以看到现在符合开机自启动要求。
设置开启不自启动
[root@RH5 mysql_setup]# chkconfig mysql off
[root@RH5 mysql_setup]# chkconfig --list|grep mysql
mysql 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
设置开机自启动
[root@RH5 mysql_setup]# chkconfig mysql on
[root@RH5 mysql_setup]# chkconfig --list|grep mysql
mysql 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
6. 建立新的数据库和用户
用root用户登录,并查看当前的数据库
[root@RH5 mysql_setup]# mysql -uroot -p123456
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
创建名称为moli的数据库
mysql> CREATE SCHEMA IF NOT EXISTS `moli` DEFAULT CHARACTER SET utf8 ;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| moli |
| test |
+--------------------+
5 rows in set (0.00 sec)
创建用户yang,密码也是yang,该用户对数据库moli有所有的执行权限,并且在任何终端下都可以访问该数据库。
mysql> grant all privileges on moli.* to 'yang'@'%' identified by 'yang' with grant option;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.05 sec)
这样设置只是开发用,在实际生产中,对用户的权限、可访问终端都要做严格的限制,不要这样分配。
使用刚建立的用户yang在本地登录:
[root@RH5 mysql_setup]# mysql -uyang –pyang
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| moli |
| test |
+--------------------+
3 rows in set (0.00 sec)
mysql> use moli;
Database changed
mysql> show tables;
Empty set (0.00 sec)
7. 设置远程端口访问
注: 适用iptables, centOS7防火墙默认是
查看防火墙状态
[root@RH5 mysql_setup]# service iptables status
防火墙已停
现在防火墙处于关闭状态,在这种情况下可以进行远程访问该数据库,下面用Windows客户端做的测试,可以正常登陆。
C:\Users\lify>mysql -uyang -pyang -h 192.168.1.100
MySQL启用的默认端口为3306,可以通过下面命令查看:
[root@RH5 mysql_setup]# netstat -nat|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
tcp 0 0 192.168.1.100:3306 192.168.1.200:50140 ESTABLISHED
上面显示一个客户端正通过3306端口在连接MySQL。
在防火墙开启情况下,设置MySQL的远程访问。
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
# 查看规则是否生效
iptables -L -n # 或者: service iptables status
上面iptables添加/删除规则都是临时的
service iptables save 或者: /etc/init.d/iptables save进行保存。
#删除规则如下
iptables -D INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
service iptables save
至此,MysQL安装已经完毕,但这只是开发环境下所有,在实际生产中,还要做更多的设置。