redis+rabbitmq+mysql的环境部署及MySQL数据的使用方法,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
安装环境:
redis:redis-3.0.7.tar.gz
mysql:mysql-5.7.23-1.el6.x86_64.rpm-bundle.tar
rabbitmq:rabbitmq-server-3.7.17-1.el7.noarch.rpm
插件:otp_src_20.1
erlang-solutions-1.0-1.noarch.rpm
socat-1.7.2.4-1.el7.rf.x86_64.rpm
tcl8.6.1-src.tar.gz
操作系统:Linux el7.x86_64
官网软件下载地址:
https://download.csdn.net/my/uploads/1/3 CSDN中完整的插件及安装包
mysql官网下载地址:https://downloads.mysql.com/archives/community/
Redis官网下载地址 http://download.redis.io/releases/
erlang下载地址 http://erlang.org/download/
rabbitmq 下载地址 https://github.com/rabbitmq/rabbitmq-server/releases/download/和
https://bintray.com/rabbitmq/rpm/rabbitmq-server
tcl8.5下载地址 http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
socat1.7 https://pkgs.org/download/socat
glibc http://ftp.gnu.org/gnu/glibc/
插件及软件下载:
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
wget http://www.erlang.org/download/otp_src_20.1.tar.gz
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.0/rabbitmq-server-generic-unix-3.7.0.tar.xz
https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.23-1.el6.x86_64.rpm-bundle.tar
1.redis安装
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson tcl libtool libtool-ltdl-devel tcl socat
报错信息:
tar -zxvf redis-3.0.7.tar.gz
cd redis-3.0.7
[root@master redis-3.0.7]# make
cd src && make all
make[1]: Entering directory /aas/redis-3.0.7/src'
/aas/redis-3.0.7/src'
Hint: It's a good idea to run 'make test' ;)
make[1]: Leaving directory
这个是提示信息让做个安装测试
make
make test
make PREFIX=/aas/redis install
进入到redis的安装目录
注:去到安装目录/aas/redis/中的bin目录下面有redis的服务端和客户端证明安装成功
默认情况,Redis不是在后台运行,我们需要把redis放在后台运行,vi redis.conf将daemonize的值改为yes
进入redis解压包utils目录下 , cd myFile/tool/redis-3.0.0/utils,找到intall_server.sh命令,执行如下语句:
./install_server.sh #然后一路回车,执行文件选择bin下面的redis-server
将启动服务redis_6379更改为redis,这个更改不更改都不影响
编辑~/.bash_profile文件如下:
export REDIS_HOME=/aas/redis/
export PATH=$PATH:$REDIS_HOME/bin
即时生效:
source ~/.bash_profile
用redis客户端连接成功
[root@host-172-168-0-129 ~]# redis-cli
127.0.0.1:6379>
127.0.0.1:6379>
redis的数据库和数据库之间是相互隔离的,使用 参数-n进行切换
切换到第2个数据库
redis-cli -n 2
127.0.0.1:6379[2]> keys *
(empty list or set)
127.0.0.1:6379[15]> help set
SET key value [EX seconds] [PX milliseconds] [NX|XX]
summary: Set the string value of a key
since: 1.0.0
group: string
127.0.0.1:6379[15]> help keys
KEYS pattern
summary: Find all keys matching the given pattern
since: 1.0.0
group: generic
使用命令help调取帮助信息
redis设置账户密码:
1.登录后设置密码:
登录账户:./redis-cli -p 6379
设置密码:config set requirepass 123456
登录时输入密码:auth 123456
查看密码:config get requirepass
redis-cli -p 6379 -a password
2.修改配置文件
#vim redis.conf
修改这一行的密码
requirepass 123456
2.rabbitmq和插件erlang的安装
wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm
wget www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm
wget https://pkgs.org/download/socat/socat-1.7.2.4-1.el7.rf.x86_64.rpm
rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
rpm -ivh socat-1.7.2.4-1.el7.rf.x86_64.rpm
rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm
[root@master 1]# rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm
error: Failed dependencies:
libc.so.6(GLIBC_2.14)(64bit) is needed by erlang-18.3-1.el7.centos.x86_64
libc.so.6(GLIBC_2.15)(64bit) is needed by erlang-18.3-1.el7.centos.x86_64
[root@master 1]# rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm --nodeps
Preparing... ########################################### [100%]
1:erlang ########################################### [100%]
erl启动的时候报错:
[root@master 1]# erl
/usr/lib64/erlang/erts-7.3/bin/erlexec: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /usr/lib64/erlang/erts-7.3/bin/erlexec)
建议直接安装GLIBC_2.15的库文件,如果只安装2.14的后面erl命令还是用不了
[root@master lib64]# ll /lib64/libc.so.6
lrwxrwxrwx. 1 root root 12 4月 23 2018 /lib64/libc.so.6 -> libc-2.12.so
注:当前的是libc-2.12.so,软件需要的GLIBC_2.14
[root@master 1]# strings /usr/lib64/libstdc++.so.6|grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
并没有动态库中要求的GCC版本 GLIBC_2.14,所以需要进行升级一下我们的GCC版本
过程如下:
GLIBC_2.14动态库升级
glibc http://ftp.gnu.org/gnu/glibc/
可以自己下载后进行安装,也可以从其他机器拷贝一个编译好的文件libc.so.6
下载了一个glibc-2.14.tar.xz
tar xvf glibc-2.14.tar.xz
mkdir glibc-build-2.14
./glibc-2.14/configure --prefix=/usr/
make && make install
安装完成后:
cp /lib64/glibc-build-2.14/glibc-build-2.14/libc.so /lib64/libc-2.14.so
rm -rf /lib64/libc.so.6
LD_PRELOAD=/lib64/libc-2.14.so ln -s /lib64/libc-2.14.so /lib64/libc.so.6
如果想切换回来可以使用ln -s /lib64/libc-2.12.so /lib64/libc.so.6 或者
LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so /lib64/libc.so.6
[root@master glibc-build-2.14]# strings /lib64/libc.so.6 | grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_PRIVATE
有了GLIBC_2.14后再去使用命令erl
/usr/lib64/erlang/erts-7.3/bin/beam: /lib64/libc.so.6: version `GLIBC_2.15' not found (required by /usr/lib64/erlang/erts-7.3/bin/beam)
重复上面的步骤安装2.15
[root@master glibc-build-2.15]# strings /lib64/libc.so.6 | grep GLIBC
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_2.15
GLIBC_PRIVATE
[root@master glibc-build-2.15]# erl
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V7.3 (abort with ^G)
1> strings /lib64/libc.so.6 | grep GLIBC
1>
证明erlang安装完成,下面开始安装rabbitmq
安装插件socat
[root@master 1]# rpm -ivh socat-1.7.3.2-1.el6.lux.x86_64.rpm
warning: socat-1.7.3.2-1.el6.lux.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID 53e4e7a9: NOKEY
Preparing... ########################################### [100%]
1:socat ########################################### [100%]
[root@master 1]# rpm -ivh rabbitmq-server-3.7.17-1.el6.noarch.rpm
warning: rabbitmq-server-3.7.17-1.el6.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID 6026dfca: NOKEY
Preparing... ########################################### [100%]
1:rabbitmq-server ########################################### [100%]
安装完成后启动mq
[root@master ~]# rabbitmq-server start &
[1] 10937
[root@master ~]# {"init terminating in do_boot",{undef,[{rabbit_prelaunch,start,[],[]},{init,start_it,1,[]},{init,start_em,1,[]}]}}
Crash dump is being written to: /var/log/rabbitmq/erl_crash.dump...done
init terminating in do_boot ()
[1]+ Exit 1 rabbitmq-server start
使用命令 ps -ef|grep rabbitmq查看进程
[root@master ~]# rabbitmq-plugins list
Configured: E = explicitly enabled; e = implicitly enabled
| Status: = running on rabbit@master
|/
[e] amqp_client 3.6.5
[ ] cowboy 1.0.3
[ ] cowlib 1.0.1
[e] mochiweb 2.13.1
[ ] rabbitmq_amqp1_0 3.6.5
[ ] rabbitmq_auth_backend_ldap 3.6.5
[ ] rabbitmq_auth_mechanism_ssl 3.6.5
[ ] rabbitmq_consistent_hash_exchange 3.6.5
[ ] rabbitmq_event_exchange 3.6.5
[ ] rabbitmq_federation 3.6.5
[ ] rabbitmq_federation_management 3.6.5
[ ] rabbitmq_jms_topic_exchange 3.6.5
[E] rabbitmq_management 3.6.5
[e] rabbitmq_management_agent 3.6.5
[ ] rabbitmq_management_visualiser 3.6.5
[ ] rabbitmq_mqtt 3.6.5
[ ] rabbitmq_recent_history_exchange 1.2.1
[ ] rabbitmq_sharding 0.1.0
[ ] rabbitmq_shovel 3.6.5
[ ] rabbitmq_shovel_management 3.6.5
[ ] rabbitmq_stomp 3.6.5
[ ] rabbitmq_top 3.6.5
[ ] rabbitmq_tracing 3.6.5
[ ] rabbitmq_trust_store 3.6.5
[e] rabbitmq_web_dispatch 3.6.5
[ ] rabbitmq_web_stomp 3.6.5
[ ] rabbitmq_web_stomp_examples 3.6.5
[ ] sockjs 0.3.4
[e] webmachine 1.10.3
[root@master ~]# ss -nalp|grep 15672
tcp LISTEN 0 128 :15672 : users:(("beam.smp",pid=6066,fd=53))
使用IP和端口进行访问
到了这里就算安装完成了
3.安装mysql
很简单,网上下载后直接安装
[root@master 1]# rpm -ivh mysql*.rpm --nodeps --force
Preparing... ########################################### [100%]
1:mysql-community-common ########################################### [ 11%]
2:mysql-community-libs ########################################### [ 22%]
3:mysql-community-client ########################################### [ 33%]
4:mysql-community-server ########################################### [ 44%]
5:mysql-community-devel ########################################### [ 56%]
6:mysql-community-embedde########################################### [ 67%]
7:mysql-community-embedde########################################### [ 78%]
8:mysql-community-test ########################################### [ 89%]
9:mysql-community-libs-co########################################### [100%]
[root@master 1]#
[root@master 1]# /etc/init.d/mysqld start
Starting mysqld [ OK ]
mysql基本操作:
show databases; 命令查看已经创建了哪些数据库。
获取表结构命令: desc 表名,或者show columns from 表名
shou tables 查看所有的表
use database1; 切换数据库
mysql -h 主机名 -u 用户名 -p
-p:密码登录, 如果登录的用户名密码为空, 可以忽略此选项。
-D:所选择的数据库名
重置mysql的数据库密码
1、首先停掉mysql 数据库 一般是安装在/etc/init.d/mysqld stop
2、修改mysql的配置文件 /etc/my.cnf
最后一行添加 skip-grant-tables 表示可以跳过权限去登录
3、重启 mysql 数据库 /etc/init.d/mysqld start
3、使用 mysql -u root -p
4、修改 mysql 表里面的用户,为其设置密码。
update user set password=PASSWORD("123456") where user='123456';
5、修改配置文件删除或禁用skip-grant-tables这行。
注:mysql的数据库老版本用参数authentication_string,新版本用参数password
update user set authentication_string=password('123456') where user='root';
update user set password=password('123456') where user='root';
创建数据库
create database test character set gbk;
测试建表
create table test(id int,name varchar(20),bianma varchar(20));
INSERT INTO test VALUES (1,'tom1','13211');
INSERT INTO test VALUES (2,'tom2','13212');
INSERT INTO test VALUES (3,'tom3','13213');
INSERT INTO test VALUES (4,'tom4','13214');
mysql能够像Oracle的sqlplus那样设置pagesize和linesize
select * from table_name\G;
mysql delete中where后能套用select
delete test_user from test_user a, (select id from test_user where id <10) b
where a.id = b.id
表数据太大只查看5行
select from gp_plat_user where rownum <6;
select from gp_plat_user limit 6;
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程笔记行业资讯频道,感谢您对编程笔记的支持。