centos7安装redis,mariaDB,以及rabbitmq[一文就够,亲测]
centos7安装redis过程
1.安装gcc环境
redis是c语言编写的,因此在安装前需要有gcc环境,可以通过如下指令安装(如果有该环境也无妨,执行该命令最多会更新版本)
yum install gcc
2.安装redis,检查是否有redis yum 源
yum install redis
如果能够安装就证明系统中存在redis的yum源,就可以跳过下面步骤,否者继续下面操作
3.下载fedora的epel仓库
这是redis的yum源
yum install epel-release
4.下载安装redis
yum install redis
5.success安装成功后,启动redis,并设置开启自启动
#启动redis
service redis start
#设置开机自启动
chkconfig redis on
#进入redis
redis-cli
#如果打不开redis,要注意是否防火墙没关或者端口没有开放
/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT#开放默认端口
#保存
/etc/rc.d/init.d/iptables save
一般不需设置密码,如果个人需要自行百度查找
此外,上面的方法不需要去修改创建repo文件,但是只能安装redis的3版本,网上创建repo的方法很复杂,可能是用来安装redis5版本的
centos7安装mariaDB过程
由于mysql被收购,或许花钱使用会在不远的未来发生,这里推荐使用mariaDB,开源的,性能和原mysql没有区别,操作也一模一样。
1.请一定卸载旧版本后再安装
yum remove mariadb-server
2.yum安装
yum install mariadb-server mariadb
3.等待安装完成后开始进行配置
#开启sql服务
systemctl start mariadb
#设置开机自启动
systemctl enable mariadb
#初始化配置
mysql_secure_installation
配置过程中可能出现的一些y/n选项
Enter current password for root (enter for none): # 输入数据库超级管理员root的密码(注意不是系统root的密码),因为是第一次进入sql环境,还没有设置密码,请一定要直接回车,一定要直接回车,一定要直接回车
Set root password? [Y/n] # 设置密码,y,如果上一步输入错误密码建议直接重新安装
New password: # 新密码,给root用户设置密码
Re-enter new password: # 再次确认密码
Remove anonymous users? [Y/n] # 移除匿名用户, y
Disallow root login remotely? [Y/n] # 拒绝root远程登录,n,不管y/n,都会拒绝root远程登录
Remove test database and access to it? [Y/n] # 删除test数据库,y:删除。n:不删除,数据库中会有一个test数据库,一般不需要
Reload privilege tables now? [Y/n] # 重新加载权限表,y。
4.尝试登陆mariadb(mysql)和mysql指令一样
mysql -u root -p 你的password
显示如下即成功
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 5.5.60-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
5. 其余个性化设置,设置MariaDB字符集默认为utf-8
配置前先查看字符集设置,要进入mariadb数据库
MariaDB [(none)]> show variables like "%character%";show variables like "%collation%";
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | utf8_general_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
3 rows in set (0.00 sec)
MariaDB [(none)]>
配置utf8字符集需要修改配置文件
vi /etc/my.cnf #没有vi的请自行yum install vi
找到 [mysqld] 标签并在下面添加如下内容后:wq保存退出
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
再修改配置文件/etc/my.cnf.d/client.cnf 文件
vi /etc/my.cnf.d/client.cnf
在 [client] 标签下添加如下内容后:wq保存退出
default-character-set=utf8
最后修改/etc/my.cnf.d/mysql-clients.cnf 文件,在 [mysql] 标签下添加内容并保存
default-character-set=utf8
为了使得配置生效,重启mariadb
systemctl restart mariadb
配置后的字符集查看如下,配置成功
MariaDB [(none)]> show variables like "%character%";show variables like "%collation%";
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_unicode_ci |
| collation_database | utf8_unicode_ci |
| collation_server | utf8_unicode_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)
MariaDB [(none)]>
6. 远程连接mariadb
由于按照上面默认的安装过程,mariadb是不允许remote连接
(1)方法一,一劳永逸,关闭防火墙
systemctl stop firewalld
(2)方法二,开放对应端口
firewall-cmd --query-port=3306/tcp # 查看3306端口是否开启,如果no就开启他
firewall-cmd --zone=public --add-port=3306/tcp --permanent # 开启3306端口,成功会返回success
7.修改user表中的host项
在centos7系统终端进入mariadb
mysql -uroot -p 你的password;
use mysql; #进入mysql库
select host, user from user; #查看内容
+-----------+------+
| host | user |
+-----------+------+
| 127.0.0.1 | root |
| ::1 | root |
| xxxx | root |
+-----------+------+
3 rows in set (0.00 sec)
将与主机名相等的xxxx换为’%'允许任何host连接,xxxx是这里代指的
update user set host='%' where host='xxxx';
或者使用授权法(推荐这种)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
再次查询后
MariaDB [mysql]> select host, user from user;
+-----------+------+
| host | user |
+-----------+------+
| % | root |
| 127.0.0.1 | root |
| localhost | root |
+-----------+------+
3 rows in set (0.00 sec)
最后刷新权限或者重启mariadb都可
MariaDB [mysql]> flush privileges; #注意是在mariadb的环境下
Query OK, 0 rows affected (0.00 sec)
[root@xxxx ~] systemctl restart mariadb #注意重启是在系统环境下
至此,能够远程对mysql进行连接,比如本人的navicat,当然这里连接过程中,如果是个人的云主机,请ssh输入个人的云服务器的公网ip,如果是个人的虚机,注意是vmware还是virtualbox的区别,这里就不展开了。
centos7安装rabbitmq过程
安装rabbitmq需要在erlang的支持,网上很多的下载安装erlang方法下载龟速,需要手动编译,下面的方法能方便些
1.下载安装erlang
下载rpm仓库并安装:
wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
安装仓库(期间可能会报错,epel-release被需要,此时yum install epel-release安装下就行)
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
有了erlang仓库安装会比单纯的下载erlang安装包快些
安装erlang
yum -y install erlang
安装完成后,测试安装是否成功,打开新世界
ctrl + z退出,至此erlang安装完毕
2.安装rabbitmq
这里使用的rabbitmq来源是github
https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.15
下载安装包
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.15/rabbitmq-server-generic-unix-3.7.15.tar.xz
由于是tar.xz格式,需要先xz解压,没有xz的,要先安装
yum install xz -y
第一次解压,xz解压
xz -d rabbitmq-server-generic-unix-3.7.15.tar.xz
将tar文件移动到自己指定目录。目录自己定,方便日后安装卸载
mv rabbitmq-server-generic-unix-3.7.15.tar /usr/local/
第二次解压,tar解压
cd /usr/local/
tar -xvf rabbitmq-server-generic-unix-3.7.15.tar
重命名
mv rabbitmq_server-3.7.15 rabbitmq
配置环境变量
vi /etc/profile
在文件的最下方写入如下内容
#set rabbitmq environment
export PATH=$PATH:/usr/local/rabbitmq/sbin
或者通过命令行输入,方法二选一
echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile
然后加载配置,使其生效
source /etc/profile
以守护进程形式启动(期间可能会报警告,直接无视)
rabbitmq-server -detached //启动rabbitmq,-detached代表后台守护进程方式启动。
检查启动端口号分别是5672和25672,请事先先保证端口号放开,或者直接关闭防火墙
//永久的添加该端口。去掉--permanent则表示临时。
firewall-cmd --permanent --zone=public --add-port=5672/tcp
firewall-cmd --permanent --zone=public --add-port=15672/tcp
//重新加载配置,使得修改有效。
firewall-cmd --reload
//查看开启的端口,出现5672/15672这开启正确
firewall-cmd --permanent --zone=public --list-ports
netstat -ntlp | grep 5672
出现如下证明开启成功
检查开启状态
rabbitmqctl status
会出现一大段证明正在运行
查看当前版本号
rabbitmqctl status | grep rabbit
显示端口号如下
其他相关命令
启动服务:rabbitmq-server -detached
查看状态:rabbitmqctl status
关闭服务:rabbitmqctl stop
列出角色:rabbitmqctl list_users
到此安装已经结束
其他扩展,可以不做
默认rabbit是不允许web打开,而且默认的用户和密码只有guest:guest,且只允许本机访问
配置web插件
rabbitmq-plugins enable rabbitmq_management
默认用户没有权限,因此需要新建用户
rabbitmqctl add_user username password //添加用户,后面两个参数分别是用户名和密码
rabbitmqctl set_permissions -p / username ".*" ".*" ".*" //添加权限
rabbitmqctl set_user_tags username administrator //修改用户角色
访问http://127.0.0.1:15672/,注意如果是VMware和virtualbox的桥接可以进入,如果是virtualbox的nat模式是访问不了的
账号密码可以是guest:guest,或者自己新建的
为了安全期间,可以删除这个默认用户
rabbitmqctl delete_user guest