發表文章

目前顯示的是 1月, 2018的文章

[MySQL] 簡易備份指令, 新增docker相關

Ref:  https://hub.docker.com/_/mysql/ 如果是使用 docker 假如建立 mysql 的指令是使用 docker run --name mysql2 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=自己建立的密碼 -v /data/db:/var/lib/mysql -d mysql 備份的話可以使用 docker exec mysql2 sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /path/to/backup.sql #!/bin/bash MYSQL_CONTAINER='mysql2' SAVE_DIR='/root/looker_video_backup' /usr/bin/docker exec "$MYSQL_CONTAINER" sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > "$SAVE_DIR/backup_`date +%Y%m%d`.sql" # find # -mtime n 指定檔案的最後修改時間(modification time),單位為天 # ex: find -mtime 7 => 七天內的被修改過的檔案會被搜出來 # -name 搜尋名字為後面字串的檔案 # -exec 將搜尋出來的結果導向後面的指令去執行 # ref: https://blog.gtwang.org/linux/unix-linux-find-command-examples/ find $data_dir -mtime +7 -name 'data_[1-9].sql' -exec rm -rf {} \; 資料來源: https://code.yidas.com/mysqldump/ 備份單一資料庫 #mysqldump -h hostname -u root -p datab

[PHP][Node.js] 指定特定的network interface送出請求

Linux # curl --interface eth0:1 PHP $url = "http://www.google.com"; $curlh = curl_init($url); curl_setopt($curlh, CURLOPT_USERAGENT, $uagent); curl_setopt($curlh, CURLOPT_INTERFACE, “888.888.888.888“); curl_setopt($curlh, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($curlh); Ref:  http://blog.unethost.com/php_assign_outgoing_ip_address/ Node.js 使用http.request中 , options可以帶 localAddress 也就是主機上的ip or npm request module, options也可以帶 localAddress Ref:  https://stackoverflow.com/questions/15773672/node-js-http-request-using-network-interface

[MongoDB] 如何知道在Linux中, MongoDB是否正在運行

ps -edaf | grep mongo | grep -v grep /etc/init.d/mongod status service mongod status ref:  https://stackoverflow.com/questions/5091624/is-mongodb-running

[Ubuntu] Linux主機相關指令, 查詢網路狀態,綁定多個ip, 新增使用者相關, 釋放memory, mount, blkid, 防火牆, iptables

顯示Linux主機作業系統相關資訊 $ cat /etc/*release ----------------------------------- 清除沒有釋放掉的memory Ref: 這裏 echo 3 > /proc/sys/vm/drop_caches (3 是指釋放pagecache、dentries與inodes,也就是釋放所有的cache) ----------------------------------- Ref: http://www.arthurtoday.com/2015/01/how-to-add-a-user-as-sudoer-using-the-command-line-in-ubuntu.html $ sudo adduser arthurtoday $ sudo adduser arthurtoday sudo 取消這位使用者的 sudoer 資格 $sudo deluser arthurtoday sudo  將已存在用戶加入到 sudo 的群組 usermod -a -G sudo chris 下面的指令來快速的查一下有那些使用者是有被放進 sudo 和 admin 群組的 $ sudo cat /etc/group | grep sudo $ sudo cat /etc/group | grep admin ------------------------------------ Ubuntu 綁定多個ip在一張網卡上, 舉eth0為例: # vi /etc/network/interfaces auto eth0:1 iface eth0:1 inet static     address xxx.xxx.xxx.xxx     netmask 255.255.255.240 auto eth0:2 iface eth0:2 inet static     address yyy.yyy.yyy.yyy     netmask 255.255.255.240 # ifup eth0:1 # ifup eth0:2 可不同網段! Ref:  https://askubuntu.com/questions/313877/how-do-i-

[AWS] Cloudformation Study

AWS內部函數參考 以下皆採用YAML的格式 Ref cloudformation 自己的函數, 用來回傳指定的”Parameters”或”Resources”的值 縮寫 ! Ref 自定義邏輯名稱 更多詳細資料 ex: Parameters: KeyName: Description: The EC2 Key Pair to allow SSH access to the instance Type: 'AWS::EC2::KeyPair::KeyName' Resources: Ec2Instance: Type: 'AWS::EC2::Instance' Properties: SecurityGroups: - !Ref InstanceSecurityGroup - MyExistingSecurityGroup KeyName: !Ref KeyName ImageId: ami- 7 a11e213 InstanceSecurityGroup: Type: 'AWS::EC2::SecurityGroup' Properties: GroupDescription: Enable SSH access via port 22 SecurityGroupIngress: - IpProtocol: tcp FromPort: '22' ToPort: '22' CidrIp: 0.0 .0 .0 / 0 像上面這個例子, Ec2Instance > Properties > SecurityGroups 底下有個 !Ref InstanceSecurityGroup !Ref 就是去搜尋在Resources/Parameters中的邏輯名稱為 InstanceSecurityGroup 的 上面的例子就會找到在Resources中的InstanceSecurityGroup Insta