码迷,mamicode.com
首页 > 其他好文 > 详细

阿里云服务器搭建经历

时间:2018-11-17 00:28:14      阅读:256      评论:0      收藏:0      [点我收藏+]

标签:please   server   load   tar   自己   解压   运行级别   char   sch   

前言

       转眼间又到了周五,今天暂时想不到什么可以写的,但是又不能浪费了周五这么难得的机会,不写点东西感觉有点罪过啊~~突然想起来以前给某个小公司做了一个留言管理系统,并且部署在阿里云服务器上。所以当时也是倒腾了一下阿里云服务器的搭建,其中也有一些踩坑的经历,想在这里记录一下,顺便也可以温习一下这个过程,同时也希望能够帮助到其他人,避免重复踩坑。好了,废话不多说,直接开始吧。

原材料:

技术分享图片

     主要需要安装配置mysql、jdk、tomcat。阿里云服务器我选择的是比较主流的Centos7操作系统,其他感觉系统应该是类似的~~

1.安装配置mysql

配置mysql教程:

     Centos7将默认数据库mysql替换成了Mariadb,对于我们这些还想使用mysql的开发人员来说并不是一个好消息。然而,网上关于Linux安装mysql数据库的教程数不胜数,但是,大多教程都是漏洞百出。今天,为了帮助各位需要的人,从而写下Centos7安装配置mysql5.6的教程。好了,话不多说,上教程:

一、安装MySQL

  • 1、下载安装包mysql-5.6.34-linux-glibc2.5-x86_64.tar(可前往官网自行下载:http://dev.mysql.com/downloads/mysql/)
  • 2、卸载系统自带的Mariadb

    打开Terminal终端:

    1 [root@localhost ~]# rpm -qa|grep mariadb  // 查询出来已安装的mariadb
    2 [root@localhost ~]# rpm -e --nodeps 文件名  // 卸载mariadb,文件名为上述命令查询出来的文件
  • 3、删除etc目录下的my.cnf

    1 [root@localhost ~]# rm /etc/my.cnf
  • 4、执行以下命令来创建mysql用户组
1 [root@localhost ~]# groupadd mysql
  • 5、执行以下命令来创建一个用户名为mysql的用户并加入mysql用户组
1 [root@localhost ~]# useradd -g mysql mysql
  • 6、将下载的压缩包放到 /usr/local/ 目录下(通过mv 要移动的文件 /usr/local/)
  • 7、解压安装包

1 [root@localhost ~]# tar -xvf mysql-5.6.34-linux-glibc2.5-x86_64.tar
  • 注:如果压缩包为:mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz,
    则解压命令为: tar -zxvf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz

  • 8、将解压好的文件夹重命名为mysql

1 [root@localhost local]# mv 解压出来的文件夹名 mysql
  • 9、在 etc 下新建配置文件my.cnf,并在该文件中添加一下代码:当然,也有简单方式:直接copy一份my.cnf文件到/etc下,然后再修改即可。e g:copy一份/usr/local/mysql/support-files/下的my-default.cnf文件到/etc下命令为:

    1 [root@localhost support-files]# cp my-default.cnf /etc/my.cnf

     

    然后,配置/etc目录下的my.cnf文件

 

1 [root@localhost support-files]# vim /etc/my.cnf

 

  • 通过vim编辑器编辑my.cnf代码如下:

 1 [mysql]
 2 //#设置mysql客户端默认字符集
 3 default-character-set=utf8 
 4 socket=/var/lib/mysql/mysql.sock
 5 [mysqld]
 6 skip-name-resolve
 7 //#设置3306端口
 8 port = 3306 
 9 socket=/var/lib/mysql/mysql.sock
10 //# 设置mysql的安装目录
11 basedir=/usr/local/mysql
12 //# 设置mysql数据库的数据的存放目录
13 datadir=/usr/local/mysql/data
14 //# 允许最大连接数
15 max_connections=200
16 //# 服务端使用的字符集默认为8比特编码的latin1字符集
17 character-set-server=utf8
18 //# 创建新表时将使用的默认存储引擎
19 default-storage-engine=INNODB
20 lower_case_table_name=1
21 max_allowed_packet=16M
  • 10、进入安装mysql软件目录

1 [root@localhost ~]# cd /usr/local/mysql
2 [root@localhost mysql]# chown -R mysql:mysql ./       修改当前目录拥有着为mysql用户
3 [root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ 安装数据库

注:若执行以上最后一个命令出现以下问题:

1 FATAL ERROR: please install the following Perl modules before executing 
2 ./scripts/mysql_install_db:Data::Dumper

解决方法 :安装autoconf库
命令:

1 yum -y install autoconf //此包安装时会安装Data:Dumper模块

安装完成重新执行上述最后一个命令
可能还会有错误,需要安装某个模块,百度一下就知道了。
重新回到上述第三个命令继续操作:

1 [root@localhost mysql]# chown -R mysql:mysql data 修改当前data目录的拥有者为mysql用户

到此数据库安装完毕!

二、配置MySQL

1、授予my.cnf最大权限

1 [root@localhost ~]# chown 777 /etc/my.cnf

设置开机自启动服务控制脚本:

2、复制启动脚本到资源目录

1 [root@localhost mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

3、增加mysqld服务控制脚本执行权限

1 [root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

4、将mysqld服务加入到系统服务

1 [root@localhost mysql]# chkconfig --add mysqld

5、检查mysqld服务是否已经生效

1 [root@localhost mysql]# chkconfig --list mysqld

命令输出类似下面的结果:

1 mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off

表明mysqld服务已经生效,在2、3、4、5运行级别随系统启动而自动启动,以后可以使用service命令控制mysql的启动和停止。

命令为:  service mysqld startservice mysqld stop

6、启动mysqld

1 [root@localhost mysql]# service mysqld start

7、将mysql的bin目录加入PATH环境变量,编辑 ~/.bash_profile文件

1 [root@localhost mysql]# vim ~/.bash_profile

在文件最后添加如下信息:

1 export PATH=$PATH:/usr/local/mysql/bin

然后按ESC键
继续 shift键加冒号打出来=> :
接下来输入wq回车即可
执行下面的命令是修改的内容立即生效:

1 [root@localhost mysql]# source ~/.bash_profile

8、以root账户登录mysql,默认是没有密码的

1 [root@localhost mysql]# mysql -uroot -p

要输入密码的时候直接回车即可。

9、设置root账户密码为root(也可以修改成你要的密码)

1 mysql>use mysql;
2 mysql>update user set password=password(root) where user=root and host=localhost;
3 mysql>flush privileges;

10、设置远程主机登录,注意下面的your username 和 your password改成你需要设置的用户和密码

1 mysql>GRANT ALL PRIVILEGES ON *.* TO your username@% IDENTIFIED BY your password WITH GRANT OPTION;

2.安装及配置jdk

主要配置环境变量,网上教程众多,这个不必多说,配置完成后需要是文件生效。

1 vim /etc/profile
2 source /etc/profile

3.安装及配置tomcat

类似jdk,简单安装不必多说。
Tomcat配置好了之后注意修改一些配置
修改端口号tomcat/conf/server.xml
修改Tomcat启动 jvm参数:tomcat/bin/catalina.sh
配置改好之后需要修改应用相关配置
应用修改配置文件tomcat/webapps/…/WEB-INF/classes/properties/mysqlback.properties备份路径

4.常见问题(踩坑)

错误:(需要授权)

技术分享图片

 

 授权方法:

1 CREATE USER sdwyq@127.0.0.1 IDENTIFIED BY your password;
2 GRANT all privileges ON sdwyq.* TO sdwyq@127.0.0.1 IDENTIFIED BY your password;
3 flush privileges;

mysqldump: command not found 问题解决:

1 ln -fs /usr/local/mysql/bin/mysql /usr/bin
2 ln -fs /usr/local/mysql/bin/mysqldump /usr/bin

错误:mysqldump: Got error: 2002: Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2) when trying to connect

原因是 mysql的存储目录更改了,需要加上-h 127.0.0.1就好了。
另外一个方法:(不需要加-h 127.0.0.1)

1 [root@localhost /]# find / -name mysql.sock

结果:

1 /var/lib/mysql/mysql.sock

原来安装到/var/lib/mysql/mysql.sock这个位置啦,我们需要修改my.cnf文件

1 [root@localhost /]# vi /usr/local/mysql/my.cnf
1 [client]
2 port    = 3306
3 socket  = /var/lib/mysql/mysql.sock

定时任务相关:修改定时任务路径

1 /bin/systemctl restart crond.service  #启动服务
2 /bin/systemctl reload  crond.service  #重新载入配置
3 /bin/systemctl status  crond.service  #查看crontab服务状态

授予指定ip权限:

1 update user set host = new ip where host = old ip and user = root;

远程连接阿里云CentOS中mysql出现10060错误
       在阿里云上搭建的mysql数据库,已经配置好了各项属性,root下也变成‘%’了,可还是用navicat连接不同,出现10060错误。最后经过查找,发现是阿里云上的安全组入口没有设置。所以写下本篇希望能给广大网友提供方便。
       你可以看到你的3306端口并没有打开,所以你新建一个就OK了。
MySQL 5.6版本 Linux下内存占用过高的解决办法
      最近在阿里云购买了一台云服务器,因为是自己测试玩的,所以配置按最低的来了,1G内存,然后啪啪啪(指键盘声音)的安装了JDK,Tomcat,MySQL(5.6)等一系列环境,开始很爽,然后噩梦开始了:
       MySQL会经常停止运行,而且启动都起不起来,要reboot才行,常看MySQL保存日志,发现是内存不够,看了一下,环境全部开启以后,内存占用基本都在90%以上,通过htop仔细查看内存占用,MySQL要占用460M左右…
       后来查阅相关资料,MySQL 5.6的默认缓存设置对于低内存的环境并不合理,如果使用默认的配置,至少要占用400M以上。可以修改my.cnf中的默认配置,降低内存占用。
       我的系统是centos,my.cnf位于/etc目录下,先关闭MySQL服务然后编辑配置文件:

1 service mysql stop
2 sudo vi /etc/my.cnf

默认的配置是:

1 performance_schema_max_table_instances 12500
2 table_definition_cache 1400
3 table_open_cache 2000

修改为:

1 performance_schema_max_table_instances=600
2 table_definition_cache=400
3 table_open_cache=256

即可,如果没有找到这三个配置,可以直接在文件尾添加,然后启动MySQL服务即可,我这边修改后后MySQL的内存占用大概在70M多。

好了,今天内容差不多就这些,感觉写的好乱。。。Anyway,还是希望能够帮到一些人吧。另外,如果有错误,欢迎大家指正~~~

阿里云服务器搭建经历

标签:please   server   load   tar   自己   解压   运行级别   char   sch   

原文地址:https://www.cnblogs.com/guishenyouhuo/p/9972462.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!