thinkuncle / thinkuncle.github.io

thinkuncle
4 stars 0 forks source link

linux平台各种软件的安装 #21

Open thinkuncle opened 8 years ago

thinkuncle commented 8 years ago

安装mysql

MySQL Cluster 7.3.3 RPM for Oracle Linux / RHEL 6 x86 进入安装目录(Mysql 服务)

rpm -ivh MySQL-server-advanced-5.6.16-1.el6.x86_64.rpm

(安装时不再分析包之间的依赖关系而直接安装)

rpm -ivh MySQL-server-advanced-5.6.16-1.el6.x86_64.rpm --nodeps --force

查看是否安装成功(默认端口3306)

netstat -atln

数据库目录

/var/lib/mysql/

配置文件(mysql.service命令及配置文件)

/usr/share/mysql

相关命令(mysqladmin mysqldump等命令)

/usr/bin

启动脚本(启动脚本文件mysql的目录)

/etc/rc.d/init.d/

查看参数

察看mysql是否在自动启动列表中 /sbin/chkconfig --list 把MySQL添加到你系统的启动服务组里面去 /sbin/chkconfig --add mysql 把MySQL从启动服务组里面删除 /sbin/chkconfig --del mysql

设置字符集

MySQL的默认编码是Latin1,不支持中文,要支持需要把数据库的默认编码修改为gbk或者utf8。

格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"
grant select,insert,update,delete on *.* to user_1@'%' Identified by '123';
grant all on *.* to user_1@'localhost' Identified by '123';

安装客户端

rpm -ivh MySQL-client-advanced-5.6.16-1.el6.x86_64.rpm --nodeps --force
rpm -ivh MySQL-devel-advanced-5.6.16-1.el6.x86_64.rpm --nodeps --force

启动Mysql服务

service mysql start

修改mysql中root的初始化密码

# /usr/bin/mysqladmin -u root password 'root'

重启与停止mysql服务

启动方式1:service mysql start 启动方式2:/etc/init.d/mysql start 停止方式1:service mysql stop 停止方式2: /etc/init.d/mysql shutdown 重启方式1:service mysql restart 重启方式2:/etc/init.d/mysql restart

设置mysql 开机启动

chkconfig mysql on

mysql开启远程访问功能

--方法1
#use mysql
#update user set host = '%' where user = '用户名'
--查询修改后的结果
#select host,user,password from user

--方法2
GRANT ALL PRIVILEGES ON *.* TO xoops_root@'%' IDENTIFIED BY '654321';
允许xoops_root用户可以从任意机器上登入MySQL。

--方法3
#vi /etc/mysql/my.cnf
>skip-networking => # skip-networking
grant all on *.* to 'root'@'ip' identified by 'password'; 

备份与恢复

进入到库目录,`cd /val/lib/mysql`
-- 备份
mysqldump -h localhost -u root -p123456 dbname > back_aaa
--恢复
mysql -h localhost -u root -p123456 dbname < back_aaa

备注

mysqladmin: connect to server at 'localhost' failed error: 'Access denied fo

编辑/etc/my.cnf

在[mysqld] 配置部分添加一行skip-grant-tables

保存后重启mysql

[root@localhost etc]# service mysqld restart
Shutting down MySQL.                                         [  OK  ]
Starting MySQL.                                              [  OK  ]
thinkuncle commented 7 years ago

安装JDK

查看JDK是否存在

查询当前系统版本:

java -version

如果存在卸载掉自带的1.4.2版本的jdk了,先确认jdk的具体版本号

rpm -qa | grep jdk
rpm -qa | grep gcj 

接下来的任务就是把java-1.4.2-gcj-compat-1.4.2.0-40jpp.115干掉了: yum -y remove java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

安装

mkdir /usr/java 
cd /usr/java 
chmod a+x jdk-1_5_0_11-linux-i586.bin 

使当前用户拥有对jdk-1_5_0_11-linux-i586.bin的执行权限;

/jdk-1_5_0_11-linux-i586.bin

运行jdk-1_5_0_11-linux-i586.bin,这时会显示出JDK的安装许可协议,按空格翻页,最后程序会问你是不是同意上面的协议,当然同意啦,输入“yes”之后开始解压JDK到当前目录。此时屏幕上会显示解压的进度。

解压完成后 /usr/java目录下会新建一个名为“jdk1.5.0_11”的目录,至此我们已经在CentOS下安装好了JDK。

配置

理论上来说JDK装好了以后就可以正常使用了,但是为了我们日后使用的方便,我们还要对它设置一下。与Windows下的JDK设置一样,我们通常需要设置一下环境变量。 我习惯修改/etc/profile来添加环境变量,/etc/profile中设置的环境变量就像Windows下环境变量中的系统变量一样,所有用户都可以使用。 用文本编辑器打开/etc/profile vi /etc/profile

在最后加入以下几行:

export JAVA_HOME=/home/hefang/jdk1.5.0_06 
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
export PATH=$PATH:$JAVA_HOME/bin 

这样我们就设置好了JDK,用reboot命令重启一下机器就可以了.

删除/卸载

用#rm -fr jdk1.5.0_11命令即可删除JDK,别忘了把配置文件的相关内容也清空啊

thinkuncle commented 7 years ago

Linux安装FTP

安装

yum install vsftpd

重启/启动/关闭

/sbin/service vsftpd start
/sbin/service vsftpd restart
/sbin/service vsftpd stop

配置

#vi /etc/vsftpd/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
保存修改,按ESC键,输入:wq
5.修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
6.启动vsftp服务并测试登录
使用命令启动vsftp服务:
#service vsftpd start

配置禁用用户

userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd/user_list

vi /etc/ftpusers 移除root

config user root path
local_root=/home/ftp/
user_config_dir=/etc/vsftpd/user_conf
sudo apt-get --purge remove nginx

vsftpd stop/waiting vsftpd start/running, process 3065

thinkuncle commented 7 years ago

安装Redis

安装

下载

官网下载 http://www.redis.io

解压

sudo tar -zxf redis-3.2.8.tar.gz

测试编译

sudo make test

安装

sudo make install

启动

./src/redis-server &

判断是否成功

./src/redis-cli
<< ping
>> pong

查看当前redis连接

client list

实时监控

monitor

指定配置文件 启动

./redis-server /etc/redis/6379.conf &

监控命令

info

停止服务

redis-cli SHUTDOWN

redis 数据备份(AOF备份)

redis> config get dir #查看aof文件保存路径

允许调用fsync将AOF日志同步到硬盘 【注:会把redis设置成只读,备份记得恢复回来】

redis> config set appendonly yes redis> SLAVEOF 127.0.0.1 6379 #需要备份的服务器的ip端口 bash > cat $dir/appendonly.aof #查看备份的aof日志 redis> SLAVEOF NO ONE #取消主从同步 redis> config set appendonly no #取消调用fsync

redis 数据还原

config set appendonly yes
redis-cli --raw -p 6378 --pipe < appendonly.aof
config set appendonly no 

redis主从配置

redis.conf 配置

daemonize:是否以后台daemon方式运行 pidfile:pid文件位置 port:监听的端口号 timeout:请求超时时间 loglevel:log信息级别 logfile:log文件位置 databases:开启数据库的数量 save :保存快照的频率,第一个表示多长时间,第三个表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。 rdbcompression:是否使用压缩 dbfilename:数据快照文件名(只是文件名,不包括目录) dir:数据快照的保存目录(这个是目录) appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。 appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步) requirepass 密码

redis安全建议

  1. 配置bind选项,限定可以连接Redis服务器的IP,修改 Redis 的默认端口6379
  2. 配置认证,也就是AUTH,设置密码,密码会以明文方式保存在Redis配置文件中
  3. 配置rename-command 配置项 “RENAME_CONFIG”,这样即使存在未授权访问,也能够给攻击者使用config 指令加大难度
  4. 好消息是Redis作者表示将会开发”real user”,区分普通用户和admin权限,普通用户将会被禁止运行某些命令,如config

linux上安装redis出现的问题

问题

按照mac的安装法启动正常,redis-server启动redis也正常,但是在指定配置文件启动时一直启动不成功

核查

在配置的日志文件中,找到日志发现异常日志

# WARNING overcommit_memory is set to 0! Background save may fail under
low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then
reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

解决方案

安装日志提示,在/etc/sysctl.conf 配置文件中增加vm.overcommit_memory=1属性, 再次启动就没问题了。