服务器配置详细说明
最近刚配置完服务器,为了备忘,本文档将详细的说明如何配置服务器的,以及记录配置服务器的过程中出现的所有问题。
安装篇
MySQL 5.7.11的安装(rpm)
1. 查看CentOS自带的MySQL版本并卸载
rpm -qa | grep -i mysql
rpm -e --nodeps mysql-libs-*2. 安装依赖(MySQL 5.5并不需要这个依赖,但是5.7必须要,否则server组件无法安装成功)
rpm -ivh numactl-2.0.9-2.el6.x86_64.rpm
3. 安装MySQL(下面的安装顺序不能错,否则会安装失败)
rpm ivh mysql-community-common-5.7.11-1.el6.x86_64.rpm
rpm ivh mysql-community-libs-5.7.11-1.el6.x86_64.rpm
rpm ivh mysql-community-client-5.7.11-1.el6.x86_64.rpm
rpm ivh mysql-community-server-5.7.11-1.el6.x86_64.rpm4. 修改数据库编码
为了保证数据库能正确处理中文,我们需要设定数据库默认的编码为utf8。
vi /etc/my.cnf修改/etc/my.cnf文件,并在其中加入以下内容:
[client]
default-character-set=utf8mb4
[mysqld]
character_set_server=utf8mb4
MySQL默认数据库表名和数据库名区分大小写,所以我们在登录的时候会遇到报错:
Table ‘xxx’ doesn’t exist
所以需要在my.cnf文件中加入以下内容:
[mysqld]
lower_case_table_names = 1
整个my.cnf文件如下所示
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
lower_case_table_names = 1
character_set_server=utf8mb4# Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid[client]
default-character-set=utf8mb4
其中黑体的为新增的语句。斜体字的注释部分在插入以上语句时,有可能会使之变成两行,运行的时候会报错。
5. 启动MySQL
service mysqld start
6. 获得MySQL初始密码
grep 'temporary password' /var/log/mysqld.log
7. 使用上一步获得的密码登录MySQL,并修改初始密码
mysql -uroot -p'初始密码'
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
8. 开放外部登陆账号
初始化的root账号只能在本地登录,像本项目中需要代理服务器和应用服务器访问数据库则利用root账号访问不了。虽然可以将root账号设置为所有ip都可以访问,但是不推荐。建议利用以下的方式开通一个外部访问的账号访问数据库:
GRANT ALL PRIVILEGES ON *.* TO '账号'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
解释下上面的命令:赋予账号对所有数据库的所有表上的权限。其中ALL PRIVILEGES 代表所有权限,当然你也可以设置该账号只有查看的权限,具体的可以百度。*.* 表示所有的数据库的所有表,比如dataBase.sys_user表示dataBase数据库里面的sys_user表。 % 表示所有的地址都可以访问,你也可以指定具体的地址可以访问,比如‘192.168.1.1’。
9. 开放3306端口
开放防火墙的有两个方法:
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
/etc/init.d/iptables save
service iptables restart vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 61616 -j ACCEPT
service iptables restart个人觉得第一种方法最方便,不像第二种需要修改配置文件。
10. MySQL自启动
因为rpm安装的时候会自动的将mysqld添加到init.d文件夹,而且会自动添加到chkconfig自启目录中,所以只需要(或者不需要?)输入以下命令就可以了
chkconfig mysqld on
JDK 1.7.0_45 的安装(rpm)
1. 查看CentOs6.5中原有的JDK环境并卸载
rpm -qa | grep jdk
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64
2. 安装JDK
rpm -ivh jdk-7u45-linux-x64.rpm
3. 配置环境
打开配置文件
vi /etc/profile
添加配置信息
JAVA_HOME=/usr/java/jdk1.7.0_45
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
令配置文件立即生效
source /etc/profile
WildFly 8.0.0.Final 安装配置(tar.gz)
安装JBoss。刚开始我使用的是AS 7.1.1 Final,但是部署war文件的时候总是出现错误:
Failed to start service jboss.deployment.unit.
找了好久,才在stackoverflow上面找到这个问题:
http://stackoverflow.com/questions/18855728/error-deploying-war-into-jboss-as-7-domain-mode-failed-to-process-phase-stru 才知道原来是因为这个7.1.1版本的jboss有很多的bug…在这篇文中中有说明:https://henk53.wordpress.com/2013/01/09/the-curious-case-of-jboss-as-7-1-2-and-7-1-3/ 所以我就使用wildfly8.0.0替代7.1.1版本做容器。
1. 安装
将wildfly-8.0.0.Final.tar.gz文件拷贝到/home 文件夹下,解压缩
tar -zxvf wildfly-8.0.0.Final.tar.gz
然后进入wildfly目录
cd wildfly-8.0.0.Final
其中 bin 文件夹是启动目录,standalone文件夹是配置和部署文件夹
2. 配置外网访问
当前wildfly默认设置是只允许本机访问,因此要进行设置允许所有IP访问该服务器
执行命令进入standalone/configuration文件夹
打开配置文件
vi /home/wildfly-8.0.0.Final/standalone/configuration/standalone.xml
将上面红框中的127.0.0.1 都修改成 0.0.0.0
这样所有的用户都能登陆了
3. 配置WildFly自启动
将wildfly下的启动文件配置软链接到init.d文件夹中
ln -s /home/wildfly-8.0.0.Final/bin/init.d/wildfly-init-redhat.sh /etc/init.d/wildfly
配置该软链接的权限
chmod +x wildfly
添加到自启程序列表中
chkconfig --add wildfly
开启wildfly自启动
chkconfig wildfly on
修改配置
vi /home/wildfly-8.0.0.Final/bin/init.d/wildfly.conf
将以下注释去掉,并修改
修改为
JAVA_HOME=/usr/java/jdk1.7.0_45
JBOSS_HOME=/home/wildfly-8.0.0.Final
JBOSS_USER=root
修改启动脚本
vi /home/wildfly-8.0.0.Final/bin/init.d/wildfly-init-redhat.sh
找到以下地方
修改成:
JBOSS_HOME=/home/wildfly-8.0.0.Final
JBOSS_CONF=/home/wildfly-8.0.0.Final/bin/init.d/wildfly.conf
JBOSS_CONSOLE_LOG=/home/wildfly-8.0.0.Final/logs/console.log
修改项目的log4j.properties,使之日志文件输出在/home/wildfly-8.0.0.Final/logs
编辑以下文件(若是想修改server.log文件位置的话)
vi /home/wildfly-8.0.0.Final/standalone/configuration/standalone.xml
修改成
/www/log/jboss/server.log
OpenOffice 4.1.3 安装(tar.gz)
1. 安装
将文件夹放到目录/home下解压
tar -zxvf Apache_OpenOffice_4.1.3_Linux_x86-64_install-rpm_zh-CN.tar.gz
进入目录
cd /zh-CN/RPMS
安装目录下的所有文件
rpm -ivh openoffice*.rpm
2. 自动启动
创建自启动脚本
vi /etc/init.d/openoffice内容是:
#!/bin/bash
#chkconfig: 2345 80 90
#description:auto_run
#openoffice4 start service
/opt/openoffice4/program/soffice -headless -accept=”socket,host=127.0.0.1,port=8100;urp;” -nofirststartwizard &
增加权限
chmod +x openoffice 加入chkconfig
chkconfig ––add openoffice 启动OpenOffice
chkconfig openoffice on openoffice有一个问题就是如果在程序中开启了openoffice服务,如果关闭了jboss再打开使用openoffice会报错
ActiveMQ 5.9.0 的安装
1. 安装
拷贝文件到/home目录下并解压缩
tar -zxvf apache-activemq-5.9.0-bin.tar.gz
再配置下代理服务器访问activmq的端口61616就可以了
2. 开放61616端口
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 61616 -j ACCEPT
/etc/init.d/iptables save
service iptables restart3. 增加activemq自启动
建立到init.d的软链接
ln -s /usr/apache-activemq-5.9.0/bin/activemq /etc/init.d/
修改启动配置文件
vi /usr/apache-activemq-5.9.0/bin/activemq
在开头加入
#### BEGIN INIT INFO
# Provides: activemq
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 6
# chkconfig: 2345 64 36
# Short-Description: ActiveMQ server
### END INIT INFO
然后在注释后加入:
export JAVA_HOME=/usr/java/jdk1.7.0_45
增加权限
chmod +x activemq
加入自启动列表
chkconfig --add activemq
开启自启动
chkconfig activemq on