mysql安装(yum方式安装)
CentOS7的yum源中默认是没有mysql的。为了解决这个问题,我们要先下载mysql的repo源。
1. 下载mysql的repo源
$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
2. 安装mysql-community-release-el7-5.noarch.rpm包
$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
安装这个包后,会获得两个mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。
3. 安装mysql
$ sudo yum install mysql-server
安装完成后是没有密码的,所以需要给root账号设置下密码
4. 重置密码
重置密码前,首先要登录
$ mysql -u root
登录时有可能报这样的错:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的访问权限问题。
如果没有创建除root之外的用户,可以手动创建个用户
创建用户:
$ useradd junko
$ passwd 你的用户密码
下面的命令把/var/lib/mysql的拥有者改为当前用户
$ sudo chown -R junko /var/lib/mysql
然后,重启服务:
$ service mysqld restart
或者
$ systemctl restart mysqld
接下来登录重置密码:
$ mysql -u root
mysql > use mysql; mysql > update user set password=password(‘你的密码‘) where user=‘root‘; mysql > exit;
同样,修改完密码后需要重启下mysql才能生效。
5.开放3306端口
$ firewall-cmd --zone=public --add-port=3306/tcp --permanent $ firewall-cmd --reload
也可以直接禁用掉防火墙(我是这么做的)
$ systemctl stop firewalld.service #停止 $ systemctl disable firewalld.service #禁用
6.远程连接
mysql安装后还要允许远程连接,其他服务器才能连接到本地的数据库。
mysql账户是否不允许远程连接。如果无法连接可以尝试以下方法:
$ mysql -u root -p //登录MySQL $ mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;//任何远程主机都可以访问数据库 $ mysql> FLUSH PRIVILEGES; //需要输入次命令使修改生效 $ mysql> EXIT //退出
也可以通过修改表来实现远程:
$ mysql -u root -p $ mysql> use mysql; $ mysql> update user set host = '%' where user = 'root'; $ mysql> select host, user from user;
一定要确保%这条记录存在!
7.修改my.cnf文件
$ vi /etc/my.cnf
清空内容,并把以下内容复制到文件中去
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
lower_case_table_names=1#linux下mysql数据库默认是大小写敏感的,1代表大小写不敏感,0代表敏感
bind-address=0.0.0.0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
保存修改,然后重启数据库,数据库到此就安装配置差不多了,不出意外,你现在可以远程链接数据库了。
jdk安装(yum方式安装)
查看yum库是否有java安装包
$ yum -y list java*
可以看到最新的jdk:java-1.8.0-openjdk.x86_64
然后执行安装命令:
$ yum -y install java-1.8.0-openjdk.x86_64
等待安装,完成后执行:
$ java -version
可以看到以下输出
openjdk version "1.8.0_111"
OpenJDK Runtime Environment (build 1.8.0_111-b15)
OpenJDK 64-Bit Server VM (build 25.111-b15, mixed mode)
jdk默认是安装到了/usr/lib/jvm目录下,cd到这个目录,可以看到刚刚安装的jdk:
java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64
安装tomcat:(当前最新tomcat9 M11)
$ cd /usr/local
创建文件夹:tools,用来存放tomcat的文件包
$ mkdir tools
进入tools目录
输入命令:
$ wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.0.M11/bin/apache-tomcat-9.0.0.M11.tar.gz
下载完后,解压:
$ tar zxf apache-tomcat-9.0.0.M11.tar.gz $ cd apache-tomcat-9.0.0.M11
在/usr/local文件夹下创建tomcat文件夹:
$ mkdir /usr/local/tomcat
然后把apache-tomcat-9.0.0.M11下的文件拷贝到新建的tomcat文件夹下:
$ mv ./* /usr/local/tomcat
(注意空格,./*代表当前文件夹下的所有文件)
tomcat优化配置,进入tomcat下conf文件夹:
$ vi server.xml
修改
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
这段配置为以下内容:
<Connector port="80" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="600" minSpareThreads="100" maxSpareThreads="500" acceptCount="700" useBodyEncodingForURI="true" enableLookups="false" compression="on" compressionMinSize="2048" compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />
修改context.xml,
$ vi context.xml
在<Context>标签中加入
<Resources cachingAllowed="true" cacheMaxSize="100000" />
注意不要随便换行,否则运行时会报错
配置jdk、tomcat环境变量:
$ vi /etc/profile
在文件末尾添加以下内容:
CATALINA_HOME=/usr/local/tomcat
CATALINA_BASE=/usr/local/tomcat
PATH=$PATH:$CATALINA_BASE/bin
export PATH CATALINA_BASE
#set java environment
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
redis安装:当前最新3.2.5
$ wget http://download.redis.io/releases/redis-3.2.5.tar.gz
$ tar xzf redis-3.2.5.tar.gz
$ cd redis-3.2.5
$ make
执行make命令时,如果报错:“make:cc 命令未找到”,解决方法如下:
原因:未安装gcc
解决方法:安装gcc
$ yum -y install gcc automake autoconf libtool make
执行make test命令时,如果报错:“You need tcl 8.5 or newer in order to run the Redis test ”,解决办法如下:
原因:未安装tcl
解决方法:安装tcl
获取:
$ wget http://downloads.sourceforge.net/tcl/tcl8.6.0-src.tar.gz
解压:
$ tar zxf tcl8.6.0-src.tar.gz
进入目录并执行命令:(注意这是两条命令,请分开执行)
$ cd tcl8.6.0/ cd unix && ./configure --prefix=/usr \ --mandir=/usr/share/man \ --without-tzdata \ $([ $(uname -m) = x86_64 ] && echo --enable-64bit) && make && sed -e "s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@" \ -e "/TCL_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" \ -i tclConfig.sh $ make install && make install-private-headers && ln -v -sf tclsh8.6 /usr/bin/tclsh && chmod -v 755 /usr/lib/libtcl8.6.so
等待命令执行完毕后,再回到redis安装文件夹下执行make test命令即可
注意:make命令执行完成编译后,会在src目录下生成6个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-check-aof、redis-check-dump、redis-sentinel。
在redis文件夹下执行
$ make install
会将make编译生成的可执行文件拷贝到/usr/local/bin目录下;
执行
$ ./utils/install_server.sh
一路回车,直到出现Installation successful!之后redis服务会跟随系统启动而启动。
Redis服务查看、开启、关闭、终端连接
1、查看Redis进程;
$ ps -ef|grep redis
2、开启Redis服务:
$ service redis_6379 start
3、关闭Redis服务:
$ service redis_6379 stop
4、终端连接:
$ redis-cli
至此,centos的javaweb项目的基本运行环境已搭建完毕,文中只涉及到我实际配置过程遇到的问题以及解决方案,其他更加详细的教程就不在此详细描述,如有问题,请多指教。
来源:oschina
链接:https://my.oschina.net/u/1866080/blog/784803