一.用select()函数实现非阻塞时的等待时间,用到结构体struct timeval {},这里就不多说了. 二.用gettimeofday()可获得微妙级(0.000001秒)的系统时间,调用两次gettimeofday(),前后做减法,从而达到定时或者计算时间的目的. 原型:int gettimeofday(struct timeval *tv,struct timezone *tz),会把目前的时间tv所指的结构返回,当地时区的信息则放到tz所指的结构中.这两个结构都放在/usr/in…
linux下mysql定时备份数据库 (2010-10-21 12:40:17) 转载▼ 标签: 杂谈   一.用命令实现备份 首页进入mysql的bin目录 1.备份数据#mysqldump -uusername -ppassword discuz > discuz_2010-04-01.sql 这样就把discuz数据库所有的表结构和数据备份到discuz_2010-04-01.sql里了,如果数据量大会占用很大空间,这时可以利用gzip压缩数据, 命令如下:#mysqldump -uuse…
linux下MySQL安装登录及操作 二.安装Mysql 1.下载MySQL的安装文件 安装MySQL需要下面两个文件: MySQL-server-4.0.16-0.i386.rpm MySQL-client-4.0.16-0.i386.rpm 下载地址为:http://www.mysql.com/downloads/mysql-4.0.html, 打开此网页,下拉网页找到“Linux x86 RPM downloads”项,找到“Server”和“Client programs”项,下载需要的…
说明:测试平台  Ubuntu 16.04.4 LTS cron是一个Linux下的定时执行工具,可以在无需人工干预的情况下运行作业.所以,在Linux中,周期性执行的任务一般由cron这个守护进程来处理.cron会读取一个或多个配置文件,这些配置文件中包含了命令行命令及其执行的时间.cron的配置文件成为“crontab”,是“cron table”的简写. crontab命令用于列出.编辑.删除.安装用于驱动cron后台进程的表格.用户把需要执行的命令序列放到crontab文件中从而获得执行…
DDOS的全称是Distributed Denial of Service,即"分布式拒绝服务攻击",是指击者利用大量“肉鸡”对攻击目标发动大量的正常或非正常请求.耗尽目标主机资源或网络资源,从而使被攻击的主机不能为合法用户提供服务. DDOS攻击的本质是:利用木桶原理,寻找利用系统应用的瓶颈:阻塞和耗尽:当前问题:用户的带宽小于攻击的规模,噪声访问带宽成为木桶的短板. 可以参考下面的例子理解下DDOS攻击.1)某饭店可以容纳100人同时就餐,某日有个商家恶意竞争,雇佣了200人来这个…
Linux系统安装后,发现中文显示乱码.因为系统编码为en_US.UTF-8,应改为支持中文的编码(即zh_CN.UTF-8)操作记录如下:1)检查linux的系统编码检查linux的系统编码,确定系统是否支持中文.在linux系统的终端中输入命令:locale,就会看到打印出的系统编码信息.[root@xqsj-beta ~]# localeLANG=en_US.UTF-8                        LC_CTYPE="en_US.UTF-8"LC_NUMERIC…
在linux系统下.本身没有对rar文件操作的命令,如果需要对rar格式的文件操作,我们需要安装第三方的软件rar以及unrar. 1.linux下rar管理软件下载的官方地址为:http://www.rarlab.com/ 2.我们可以按如下命令进行下载和安装,这里笔者下载linux_x64最新版本的rar软件---RAR 5.21 beta 1 for Linux x64 [root@ ~]# wget http://www.rarlab.com/rar/rarlinux-x64-5.2.1…
一.gcc/g++命令中关于库的参数: -shared: 该选项指定生成动态连接库: -fPIC:表示编译为位置独立(地址无关)的代码,不用此选项的话,编译后的代码是位置相关的,所以动态载入时,是通过代码拷贝的方式来满足不同进程的需要,而不能达到真正代码段共享的目的. -L:指定链接库的路径,-L. 表示要连接的库在当前目录中 -ltest:指定链接库的名称为test,编译器查找动态连接库时有隐含的命名规则,即在给出的名字前面加上lib,后面加上.so来确定库的名称 -Wl,-rpath: 记录…
在Linux下的开发中,经常涉及到对文件里的字符进行处理,当中,对字符的替换操作也是非常的频繁. 本文以一个实际的文件为例,具体介绍了Linux下经常使用的vi替换字符命令,为相关的开发工作提供给了參考. 本文中被操作的文件为TestFile.txt,当中的内容例如以下: 可见.仅仅有第三行和第五行的第一个"123"变成了"321".第一行的"123"没有被替换.由于命令是从第二行開始运行的.         2) :n,$s/str1/str2…
Linux中,我们使用命令行的时候,一个窗口只能使用一个命令行,若是需要使用多个输入位置进行操作,那么只能多开几个窗口,今天介绍一款软件,可以让我们在一个窗口使用多个输入行,先来效果图展示下 Linux下的分屏软件--Tmux,可以帮助我们方便的使用多屏操作服务器,提高工作效率,很实用 在服务器上安装Tmux //安装Tmux apt-get install tmux 在窗口启动Tmux //我们只需要输入Tmux就可以进入Tmux Tmux 简单介绍几个常用的命令,详细的命令会在文章末尾贴出…
from : http://blog.chinaunix.NET/uid-21556133-id-118208.html 安装Sqlite3: 从www.sqlite.org上下载Sqlite3.2.2运源代码,依照Readme中的步骤: tar xzf sqlite3.2.2.tar.gz mkdir bld cd bld ../sqlite3.2.2/configure make make install 然后在shell下运行 sqlite3 test.db命令可以检验是否已经安装成功.…
1. 设置数据库空表可导出(oracel11g) 用PL/SQL登录数据库(或者其他工具) 执行: select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0; 然后执行查询出来的语句: 2. 查看数据库的字符集 数据库的字符集必须和Linux下设置的环境变量一致,不然会有乱码. 以下连个sql语句都可以查到: select * from nls_database_paramet…
一.RAID简述 磁盘阵列(Redundant Arrays of Independent Disks,RAID),是把多个物理磁盘组成一个阵列,当作一个逻辑磁盘使用,它将数据以分段或条带的方式储存在不同的磁盘中,这样可以通过在多个磁盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量 二.RAID分类 1.外接式磁盘阵列:常被使用在大型服务器上,专业的硬件磁盘阵列盘柜,价格昂贵,主要厂商:IBM.HP.EMC等 2.内接式磁盘阵列:需要技术人员来使用操作,同时需要配备硬件RAID卡或者阵列卡…
很多时候我们有希望服务器定时去运行一个脚本来触发一个操作,比如说定时去备份服务器数据.数据库数据等 不适合人工经常做的一些操作这里简单说下 shell Shell俗称壳,类似于DOS下的command和后来的cmd.exe.它接收用户命令,然后调用相应的应用程序.作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令:作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支. 我这里是centos6,5 接下来 写一个…
Linux是作为一个多用户.多任务的操作系统,文件一旦被删除是难以恢复的.尽管删除命令只是在文件节点中作删除标记,并不真正清除文件内容,但是其他用户和一些有写盘动作的进程会很快覆盖这些数据.在日常工程中,谁也说不准永远不犯错误,万一哪天不小心误操作删除了一些重要文件,该怎么办呢??莫慌!这里介绍一款神器extundelete,这是针对ext4文件格式下文件删除后的恢复工具,十分强大!! 废话不多说,下面开始介绍这款神器的使用:1)下载并安装软件extundelete主页:http://extun…
方法一.用shell脚本定时更新项目   1.进入网站的根目录,假设项目位置放在/var/www/test cd /var/www/test   2.建立脚本文件update.sh,分两步进行.首先利用touch命令创建,之后使用vim进行编辑. touch update.sh vim update.sh   输入以下内容   #!/bin/sh while true do svn update --username 你的svn用户名 --password 你的svn密码 sleep 60 do…
一.简单介绍SAN,即存储区域网络(storage area network and SAN protocols),它是一种高速网络实现计算机与存储系统之间的数据传输.常见的分类是FC-SAN和IP-SAN两种.FC-SAN通过光纤通道协议转发scsi协议:IP-SAN通过TCP协议转发scsi协议,也就是IP 地址.存储设备是指一台或多台用以存储计算机数据的磁盘设备,通常指磁盘阵列,主要厂商EMC.日立等. iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用…
备份 1.数据库定时备份工作脚本:(日期时间作为名称的压缩文件,解压开是sql脚本) /root/backup/script/backup_mysql.sh 2.备份输出路径: /root/backup/mysql 3.执行计划任务的命令: #crontab -e 打开计划任务编辑器 #增加如下内容(指定于周日和周四00:00开始执行backup_mysql.sh备份脚本) 0 0 * * 0,4 /root/backup/script/backup_mysql.sh 4.如果对库新增了数据,也…
  文件操作权限: chmod 三个八进制数字 文件名 其中:三个八进制数字,第一个代表本用户的权限,第二个代表同组的权限,第三个代表其他用户的权限4代表可读2代表可写1代表可执行例如:chmod 754 file1.c 代表file1.c文件对本用户可读可写可执行,对同组用户可读可执行,对其他用户可读. 创建目录: int mkdir(char *pathname, mode_t mode); 示例: int main() { char *path="/root/tmp11"; )=…
https://my.oschina.net/u/2487410/blog/683308 使用linux curl命令讲解:http://www.linuxdiyf.com/linux/2800.html [root@jiangbo ~]# crontab -ecrontab: installing new crontabYou have new mail in /var/spool/mail/root[root@jiangbo ~]# crontab -l*/1 * * * * /usr/bi…
目标:把一台linux机上mongodb的数据定时备份到另一台机上: 过程: 一开始打算使用mongoexport和mongoimport,但是总是会报“\x00”字符串不能识别的问题,后来就改成了mongodump和mongorestart,成功实现目标. (\x00的问题还在寻找解决办法): 脚本代码: #获取系统时间并转换成毫秒数 current=`date "+%Y-%m-%d %H:%M:%S"`; timeStamp=`date -d "$current"…
转自:http://blog.csdn.net/season_hangzhou/article/details/36423223 一.安装硬盘到物理机上. 二.查看硬盘是否正确安装. 使用“fdisk -l”命令查看硬盘代号. root@greatms-All-Series:/home/share# fdisk -l      Disk /dev/sda:  bytes    heads,  sectors/track,  cylinders, total  sectors   Units = …
mongodb,是一种结构最像mysql的nosql mysql中的数据库,mongodb中也有,区别在于, myql中数据库下的是表,字段和数据的形式存在 mongodb数据库下的是叫集合(和python中的集合不是一个概念),文档,字典的形式存在 而mysql,redis,mongodb,三者的区别: mysql适合长期保存,可存储的数据量大,时间长 redis存储时间短,但调用反应快,时间短,适合一直在不停的变化的数据 mongodb存在于两者中间,速度一般,保存时间一般,适合一段时间查看…
1. 在服务器上建立备份文件的存放文件夹 sudo mkdir /usr/local/dbbackup 2. 编写备份脚本 vi dbbackup.sh 在里面编写如下内容 mysqldump -uroot -p1W8a6N0g1Y3i3F1a1N99 cusflo | gzip > /usr/local/cusflo-dbback/cusflo`date +%Y-%m-%d_%H%M%S`.sql.gz cd /usr/local/cusflo-dbback/ rm -rf `find . -…
前言:众所周知Linux是一个可以同时让多个用户登录的操作系统,每个用户的操作都影响着Linux运行,除了要做好安全工作以外,防止人为恶意损坏也是很关键的,比如有人恶意执行危险命令,要查找就得记录所有用户名,登录用户,用户的IP地址,执行时间,执行的命令就很重要.分享一个脚本,可以记录所有用户使用过的操作命令外,还能记录登录的Key的用户,登录IP,时间等. user_ip=`who -u am i 2>/dev/null | awk '{print $NF}'| sed -e 's/[()]/…
1. 查看日志 tail -f catalina.out 会动态打印日志. 2. 查看所有日志 less -f catalina.out 打开所有日志后,默认是显示第一页,常用命令用到如下: G:到达最后一页 ctrl + f:向下翻页 ctrl + b:向上翻页 注意大小写. 3. 查看某个时间段的日志 sed -n '/2016-08-10 16:35:/,/2016-08-10 16:36:/p' catalina.out > ~/catalina.out.20160810-1032 看上…
1.创建test.sh文件 touch test.sh 2.编辑sh文件 vi test.sh(i:插入 | esc:退出insert模式 | wq+回车:退出) 3.保存退出 敲击esc, 然后输入 :wq ,回车退出 4.添加可执行权限,当然默认就是可执行的. chmod +x test.sh 5.运行文件 (2)sh test.sh rm test.sh 6 .sh中的注释:# 二 linux中echo命令的换行方法: echo -e "text1\ntext2" 输出结果 te…
使用安装包安装 环境: Linux, OS X, or Unix Python 2 version 2.6.5+ or Python 3 version 3.3+ 检查Python版本 $ python --version 安装步骤1.下载安装包 $ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"2.解压压缩包 $ unzip awscli-bundle…
aptitude+回车 - 进入aptitude操作界面,可以对预览查看各种软件包 aptitude show package_name - 列出与XXX相关的软件包信息,但是并不能看到该软件包所安装相关联的所有文件列表 可用 dpkg -L package_name 列出该软件包所安装的所有文件 aptitude search package_name(软件包名字,可以是不完全的且不用加通配符) - 列出所有可获得的相关软件包 各软件包项前均有字母 P/I/V 标识,其中I表示已安装,P/V表…
1.添加backupmysqleveryday.sh(vi /data/shell/backupmysqleveryday.sh) #!/bin/sh #this shell is user for backup mysql data everyday #author:www.ieliwb.com #path-config base_mysql_path=/data/webserver/mysql/ mysql_dump_path=/data/mysqlbackup/ mnt_back_path…