文档章节

实现Web应用的高并发、负载均衡配置(2) - MySQL环境配置

三平行者
 三平行者
发布于 2016/04/22 16:29
字数 1138
阅读 129
收藏 12

一、查看CentOS是否安装MySQL

# rpm -qa | grep mysql       //查看该操作系统上是否已经安装了mysql数据库
# rpm -e mysql              // 普通删除模式
# rpm -e --nodeps mysql     // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除

二、下载MySQL源码包

http://dev.mysql.com/downloads/mysql/5.6.html#downloads

或者直接用命令行安装

[root@localhost ~]# yum install -y mysql-server mysql mysql-deve

三、安装和编译mysql安装包

(1)安装编译代码所需要的包

[root@localhost mysql-5.6.26]# yum -y install make gcc-c++ cmake bison-devel ncurses-devel libaio
[root@localhost mysql-5.6.26]# yum install libaio libaio-devel -y
[root@localhost mysql-5.6.26]# yum install perl-Data-Dumper -y
[root@localhost mysql-5.6.26]# yum install net-tools -y

(2)解压安装包并编译安装

[root@localhost src]# tar xvf mysql-5.6.26.tar.gz
[root@localhost src]# cd mysql-5.6.26
[root@localhost mysql-5.6.26]# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci

编译成功

[root@localhost mysql-5.6.26]# make && make install

至此,mysql安装完成

检查系统是否已经有mysql用户,如果没有则创建

[root@localhost mysql-5.6.26]# cat /etc/passwd | grep mysql
[root@localhost mysql-5.6.26]# cat /etc/group | grep mysql

创建mysql用户(但是不能使用mysql账号登陆系统)

[root@localhost mysql-5.6.26]# groupadd mysql
[root@localhost mysql-5.6.26]# useradd -g mysql mysql

修改权限

[root@localhost mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql

(3)初始化配置脚本
进入安装路径

[root@localhost mysql-5.6.25]# cd /usr/local/mysql

执行初始化配置脚本,创建系统自带的数据库和表

[root@localhost mysql]# scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir /my.cnf",在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!
注意:在CentOS 7版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。
在使用"yum update"更新系统后,需要检查下/etc目录下是否会多出一个my.cnf,如果多出,将它重命名成别的。否则,MySQL将使用这个配置文件启动,可能造成无法正常启动等问题。

(4)设置开机启动

[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql]# chkconfig mysql on

(5)启动MySQL服务

[root@localhost ~]# service mysql start

注:如果启动时报错 “Starting MySQL.... ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid).”则重新编译


(6)设置root密码,登录mysql

[root@localhost ~]#  mysql -uroot 
mysql> set password for root@localhost=password('root');  
mysql> exit;


四、配置MySQL

(1)创建mysql新用户test_user

mysql> create user 'test_user'@'%' identified by 'test_user';

(2)给新用户test_user授权,让他可以从外部登录和本地登录
   注意:@左边是用户名,右边是域名、IP和%,表示可以访问mysql的域名和IP,%表示外部任何地址都能访问。

mysql> grant all privileges on *.* to 'test_user'@'localhost' identified by 'test_user';  
mysql> grant all privileges on *.* to 'test_user'@'%' identified by 'test_user';  
mysql> select user,host,password from mysql.user;  
mysql> flush privileges;


(3)查看mysql的默认存储引擎
   从下面的执行结果可以看出,mysql的默认引擎是MyISAM,这个引擎是不支持事务的。

mysql> show engines;

   也可以以下面的方式查看

mysql> show variables like 'storage_engine';


(4)修改mysql的默认引擎为InnoDB
    停止mysql   

mysql> exit;  
[root@localhost ~]# service mysqld stop

 
(5)修改 /etc/my.cnf
 [mysqld] 后加入  default-storage-engine=InnoDB 
  加入后my.cnf的内容为:

 [root@localhost etc]# more my.cnf

    [mysqld]  
    datadir=/var/lib/mysql  
    socket=/var/lib/mysql/mysql.sock  
    user=mysql  
    # Disabling symbolic-links is recommended to prevent assorted security risks  
    symbolic-links=0 
    default-storage-engine=InnoDB  


    [mysqld_safe]  
    log-error=/var/log/mysqld.log  
    pid-file=/var/run/mysqld/mysqld.pid  

(6) 重新启动mysql

[root@localhost etc]# service mysqld start  
 Starting mysqld:  [  OK  ]


(7)修改防火墙,开放操作系统MySQL端口3306
CentOS6.5默认是不开放端口的,如果要让外部的系统访问CentOS6.5上的mysql,必须开放mysql的端口3306

[root@localhost etc]# vi /etc/sysconfig/iptables

添加下面一行

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

重启防火墙

 [root@localhost etc]# service iptables restart


这样就可以从外部访问mysql了。
至此,MySQL在CentOS上的安装全部完成。



实现Web应用的高并发、负载均衡配置(1) - JDK环境配置

实现Web应用的高并发、负载均衡配置(2) - MySQL环境配置


© 著作权归作者所有

共有 人打赏支持
三平行者
粉丝 3
博文 32
码字总数 14655
作品 0
海淀
项目经理
私信 提问
细谈普通网站的后台构建实战----my note

比如你建一个普通网站,流量不高。如何设计 普通PC环境,大约同时支持2000到3000的并发量,当然,我不排除有高手进行后台服务器优化,实现更高的并发量。 一些大型的网站会采取“分流”的方式...

crossmix
2016/03/22
76
1
大型Web系统架构

动态应用,是相对于网站静态内容而言,是指以c/c++、php、Java、perl、.net等服务器端语言开发的网络应用软件,比如论坛、网络相册、交友、BLOG等常见应用。动态应用系统通常与数据库系统、缓...

ugali
2017/09/04
0
0
大型系统的发布部署方案

动态应用,是相对于网站静态内容而言,是指以c/c++、php、Java、perl、.net等服务器端语言开发的网络应用软件,比如论坛、网络相册、交友、BLOG等常见应用。动态应用系统通常与数据库系统、缓...

罗文浩
2015/09/12
13.3K
0
Linux之FineBI集群部署

在企业应用中,通常单个计算机的配置是有限的,而企业应用又是高并发的需求,这个时候会通过计算机集群的方式来提高并发数,从而提高整体应用服务的性能。集群是将多台计算机作为一个整体来提...

雄霸天下啦
2017/03/20
0
0
实现Web应用的高并发、负载均衡配置(1) - JDK环境配置

第一步:查看Linux自带的JDK是否已安装 (卸载CentOS已安装的jdk版本,重新安装sun公司的jdk。此步不是必须的,只是建议,方便后面jdk升级) (1)先查看 # rpm -qa | grep java 显示如下信息...

三平行者
2016/04/22
74
0

没有更多内容

加载失败,请刷新页面

加载更多

EMAS,一部淘宝十年移动互联网技术的演进史

导读 本文根据2018云栖大会深圳峰会·EMAS专场—移动互联的进化论,阿里巴巴高级技术专家泠茗《 EMAS全景介绍》的演讲整理而成,文中就EMAS的起源史及EMAS的五大移动研发场景解决方案进行了分...

迷你芊宝宝
17分钟前
1
0
C# 图片人脸识别

此程序基于 虹软人脸识别进行的开发 前提条件从虹软官网下载获取ArcFace引擎应用开发包,及其对应的激活码(App_id, SDK_key)将获取到的开发包导入到您的应用中 App_id与SDK_key是在初始化...

是哇兴哥棒棒哒
19分钟前
2
0
spring boot web项目连接池配置分析

两篇文档,请读者自行分析: Druid: https://www.cnblogs.com/niejunlei/p/5977895.html HikariCP: http://blog.csdn.net/clementad/article/details/46928621...

sunranhou
21分钟前
1
0
TypeError: Object of type int64 is not JSON serializable

问题 在使用json.dumps(param)将python对象转成json的过程中出现了,如下问题: TypeError: Object of type int64 is not JSON serializable 代码如下: param = { 'remoteId': 'rem......

亚林瓜子
24分钟前
1
0
Android MediaPlayer

1.通过静态方法构造 MediaPlayer.create(Context context,int resid); 2.构造方法: MediaPlayer(); 设置媒体源: setDataSource(String path); 3.设置是否循环: setLooping(boolean) 4.播放......

Coding缘
26分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部