Linux上安裝Mysql

Cache Server Configuration Manual

1、Operation System Requirement:
RedHat Linux AS 4 update 4
2、Package Installation:
1) Editors
2) Server Configuration Tools
3) Development Tools
4) Administration Tools
3、Language:
English (US)
4、Application Software:
1)Software: Squid-3.0.STABLE8加密版本 Mysql for Linux 5.0.45
2)Download the software files from Files server (192.168.65.180)
5、Mysql Configuration
1) 安裝路徑
/usr/local/mysql
2) 添加用戶和組
# groupadd mysql 添加組命令
# useradd mysql -g mysql 添加用戶命令
4) Mysql編譯參數
將mysql-5.0.45.tar.gz上傳到服務器/root文件,首先解壓mysql-5.0.45.tar.gz文件,輸入以下命令
#tar –zvxf mysql-5.0.45.tar.gz
cd mysql-5.0.45 然後執行下面命令
[Shell]# ./configure --prefix=/usr/local/mysql --enable-thread-safe-client --with-charset=utf8 --with-extra-charsets=all --with-mysqld-user=mysql --enable-large-files --with-big-tables --with-unix-socket-path=/tmp/mysql.sock --localstatedir=/var/lib/ --with-plugins=all

5) 編譯與安裝
#make
# make install
6) 修改權限
# chown -R mysql:mysql /usr/local/mysql
7) 初始化數據庫、修改權限
#./scripts/mysql_install_db --datadir=/var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
8)複製並修改Mysql系統配置文件
#cp -arf support-files/my-medium.cnf /etc/my.cnf
vi /etc/my.cnf
[mysqld]
skip-name-resolve //這一選項可以消除MySQL進行DNS解析的時間
#skip-federated //註釋掉
#log-bin=mysql-bin //註釋掉mysql-bin
set-variable = max_connections=60000 設置連接
9)添加mysql到Service ,並設置隨機自動運行Mysql
#cp support-files/mysql.server /etc/rc.d/init.d/mysqld
接着把它的屬性改爲“x”(executable,可執行)
#chmod +x /etc/init.d/mysqld
#chown mysql.mysql /etc/init.d/mysqld
修改/etc/init.d/mysqld (第46、47行)
basedir=/usr/local/mysql
datadir=/var/lib/mysql

10) 最後,運行chkconfig把MySQL添加到你係統的啓動服務組裏面去。
#/sbin/chkconfig --add mysqld
11) 服務啓動
# service mysqld start
12) 更改mysql管理員密碼
#mysqladmin -u root password ‘cdnhub2008’


權限分配:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Gcdn.idcsea.com' WITH GRANT OPTION;
其中兩個賬戶有相同的用戶名monty和密碼some_pass。兩個賬戶均爲超級用戶賬戶,具有完全的權限可以做任何事情。一個賬戶 ('monty'@'localhost')只用於從本機連接時。另一個賬戶('monty'@'%')可用於從其它主機連接。


mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';
該賬戶只用於從本機連接。授予了RELOAD和PROCESS管理權限。這些權限允許admin用戶執行mysqladmin reload、mysqladmin refresh和mysqladmin flush-xxx命令,以及mysqladmin processlist。未授予訪問數據庫的權限。你可以通過GRANT語句添加此類權限。

mysql> GRANT USAGE ON *.* TO 'dummy'@'localhost';
一個賬戶有用戶名dummy,沒有密碼。該賬戶只用於從本機連接。未授予權限。通過GRANT語句中的USAGE權限,你可以創建賬戶而不授予任何權限。它可以將所有全局權限設爲'N'。假定你將在以後將具體權限授予該賬戶。
flush privileges;
6、Squid Database configuration
[Shell]# mysql –u root –p
Mysql> create database squid;
Mysql> use squid;
Mysql> create table traffic (
date datetime default '0000-00-00 00:00:00',
cachemsec int,
ip_addr varchar(15),
tag varchar(28),
httpcode int,
bytes bigint(20) ,
method varchar(5),
url varchar(255),
user char(8),
timeout varchar(12),
hierstr varchar(10),
hierhost varchar(15),
contenttype varchar(30),
ereq varchar(20),


erep varchar(20)
);
Mysql> GRANT ALL ON squid.* TO squid@localhost IDENTIFIED BY 'squidsar';
Mysql>GRANT ALL ON squid.* TO [email protected] IDENTIFIED BY 'squidsar';
Mysql>flush privileges;
注:數據庫名:squid,表名:traffic,用戶名squid,密碼:squidsar(2008-04-08更新)


7、JAVA Configuration
1)、安裝路徑
/usr/local/java/
2)、安裝方法
從文件服務器上傳 jdk-6u4-linux-i586.bin和mysql-connector-java-5.1.5-bin.jar至/usr/local
# sh jdk-6u4-linux-i586.bin 彈出協議,大概按下7次空格鍵後,輸入yes,會在/usr/local下生成一個jdk1.6.0_04目錄
3)、將mysql-connector-java-5.1.5-bin.jar文件移動到jdk1.6.0_04
#mv mysql-connector-java-5.1.5-bin.jar jdk1.6.0_04/lib
4)、將文件移動到java下
# mkdir /usr/loca/java
# mv /usr/local/jdk1.6.0_04 /usr/local/java
5)、配置環境變量
#vi /root/.bash_profile 在文件尾部加入以下信息
 export LANG= en
export LC_ALL= C
export JAVA_HOME=/usr/local/java/jdk1.6.0_04
export JAVA_BIN=$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/mysql-connector-java-5.1.5-bin.jar
export PATH=$JAVA_HOME/bin:$PATH

6、重新登錄Linux,新的java環境立即生效
8、SSL Support Configuration
1)、下載openssl
http://www.openssl.org/source/openssl-0.9.8i.tar.gz或從192.168.65.180中取得
2)、解壓安裝
#tar -zvxf openssl-0.9.8i.tar.gz
#cd openssl-0.9.8i
#./config --prefix=/usr/local/openssl
# make
# make install
#
3)、產生key
#cd /usr/local/openssl/ssl
#openssl genrsa -out privkey.pem 2048
4)、產生證書
#openssl req -new -keyout privkey.pem -nodes -x509 -days 1095 -out cacert.pem
Country Name (2 letter code) [GB]:CN

State or Province Name (full name) [Berkshire]:Beijing
Locality Name (eg, city) [Newbury]: Beijing
Organization Name (eg, company) [My Company Ltd]:CDNHUB System Co,.Ltd.
Organizational Unit Name (eg, section) []:noc
Common Name (eg, your name or your server's hostname) []:ssl-gw-bjcnc-60.cdnhub.com(視節點名稱而改變)
Email Address []:[email protected]
5)、配置squid:
將以下內容插入到squid的配置文件sqiud.conf中(可通過CDNMS系統來生成)
#SSL Support
https_port 443 vhost vport=443 cert=/usr/local/openssl/ssl/cacert.pem key=/usr/local/openssl/ssl/privkey.pem
sslproxy_flags DONT_VERIFY_PEER

9、Squid Configuration
1) 安裝路徑
/usr/local/squid 從文件服務器將文件上傳至/usr/local/目錄下
2) 添加用戶和組
# groupadd squid 添加組命令
# useradd squid –g squid 添加用戶命令
3)初始化目錄級權限
#mkdir /cachelog/squid
# mkdir /cachelog/squid/logs
# mkdir /cachelog/squid/logs/backups
#chown –R squid:squid /cache*
4) 解壓文件
# tar –zvxf squid.3.0.8.tar.gz
5) 修改權限
#chown –R squid:squid /usr/local/squid
6) 生成配置文件(squid.conf)
手上上傳配置文件或通過CDNMS生成(如果通過CDNMS生成,需先進行第10點操作完成後,方可遠程生成配置文件)
7)初始化Cache目錄
#/usr/local/squid/sbin/squid –z
8) 啓動squid服務
# ulimit –Hn 32768
# /usr/local/squid/sbin/squid –D –s &


10、CDNCS-Configuration
1)修改IPTABLE:將新的節點服務器IP增加至/root/ipfw.sh文件中,並運行/root/ipfw.sh文件
2)修改路由表走向,CDNCS服務器分別配有電信,網通,香港IP地址各一個,默認路由是電信出口,如果增加的節點服務器爲網通或國外節點,需要個修改/root/route.sh文件,將其節點IP手動增加到路由表,並手工執行路由增加命令
3)授權節點服務器對CDNCS中的mysql有寫入的權限:
進入mysql服務器,執行以下命令:
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 284 to server version: 5.0.45

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use mysql
Database changed
mysql> GRANT INSERT ON COUNT_CDN_SAR.* TO [email protected] IDENTIFIED BY 'squidcount';
mysql>GRANT SELECT,UPDATE ON cdnhub_cdnms.CACHE_SERVER_STATUES TO [email protected] IDENTIFIED BY 'squidcount';
mysql>exit
備註:x.x.x.x 爲節點服務器的IP地址

4)修改隨機啓動文件,將防火牆配置和squid隨服務器一起啓動
#vi /etc/rc.local
添加以下內容
/bin/sh /root/ipfw.sh &
ulimit –Hn 32768
/usr/local/squid/sbin/squid –D –s &

11、Remote Admin and Traffic Statistic Configuration
1)安裝目錄
將cdnhub文件夾上傳到/usr/local下
2)修改該目錄所以.sh文件,增加可執行權限。
#chmod +x *.sh (分別進入各目錄執行)
4)修改rmi目錄中的rmi_server.properties,替換IP、IPENCRYPT(這個值需要在CDNMS加添服務器後取得),修改完成後,啓動rmi監控程序:sh server.sh &
5)修改sar目錄中的COUNT_CDN_SAR_DB.properties中的jdbc:mysql://220.231.181.244(適合電信節點),如果是網通節點,需將該IP換成58.251.130.222
6)修改sar目錄中的Read_Stop_domain_ip_traffic.properties的localAddress=210.83.80.217(節點服務器IP)和domain_ip_traffic_last_data_time=2008-11-05 17\:53\:00(修改DNS時的時間,也就是第一次使用時間)
修改完以上配置文件後,啓動流量上傳程序文件:sh start_traffic.sh &


12、Auto Split AccessLog and upload to FTPSRV
1)上傳文件:將文件Split_Access_log_preday_predomain.sh ftplog.sh uploadaccesslog.sh上傳到節點服務器/cachelog/squid/logs/backups/
2)授於執行權限:chmod +x /cachelog/squid/logs/backups/*.sh
13、Crontab Configuration
# crontab –e
添加以下內容:
#-----------SyncTime------------------------------
0 0 * * * /usr/local/cdnhub/system/synctime.sh
#-----------Backup Access Log --------------------
0 0 * * * /usr/local/cdnhub/system/access-log-backup.sh
#----------Split AccessLog and upload AccessLog----
1 1 * * * /cachelog/squid/logs/backups/uploadaccesslog.sh
#---------- Java program monitoring-------
*/10 * * * * /usr/local/cdnhub/system/Monitorjava.sh
:wq保存退出


14、Firewall setting
1)Firewall文件存放路徑:/root/ipfw.sh
2)Firewall文件內容:
#!/bin/sh
/sbin/iptables -F
# SSH service access list
/sbin/iptables -A INPUT -i eth0 -p tcp -s 10.92.254.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 10.92.16.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 192.168.65.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 220.232.159.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 220.231.182.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 220.231.183.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 58.251.1.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 58.251.50.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 61.145.165.0/24 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 222.126.128.0/17 --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp -s 0.0.0.0/0 --dport 22 -j DROP
# http and https and other service access list
/sbin/iptables -A INPUT -i eth0 -p tcp -m multiport -s 0.0.0.0/0 --dport 80,443 -j ACCEPT
#SNMP service only for mrtg.cdnhub.com
/sbin/iptables -A INPUT -i eth0 -p udp -s 220.231.181.242/32 --dport 161 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p udp -s 0.0.0.0/0 --dport 161 -j DROP
#java for Squid configuration
/sbin/iptables -A INPUT -i eth0 -s 220.231.182.0/29 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -s 220.231.181.243/32 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -s 220.231.181.244/32 -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m multiport --sport 20,21,25,53,22,123,80,443 -j ACCEPT
/sbin/iptables -A INPUT -p udp -m multiport --sport 20,21,25,53,22,123,80,443 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -s 0.0.0.0/0 --sport 1024:65535 -j ACCEPT
/sbin/iptables -A INPUT -p udp -s 0.0.0.0/0 --sport 1024:65535 -j ACCEPT
#Accept ICMP
/sbin/iptables -A INPUT -p icmp --icmp-type any -j ACCEPT

#Drop
/sbin/iptables -A INPUT -i eth0 -j DROP


注:ethX需視節點服務器的網卡名稱來決定,使用ifconfig可以查看到所以網卡的名稱

15、SNMP Installation and configuration
1)所需要文件:net-snmp-5.1.2-11.EL4.7.i386.rpm net-snmp-libs-5.1.2-11.EL4.7.i386.rpm
2)安裝方法:
# rpm –ivh net-snmp-libs-5.1.2-11.EL4.7.i386.rpm
# rpm –ivh net-snmp-5.1.2-11.EL4.7.i386.rpm
3)修改snmpd.conf文件
# vi /etc/snmp/snmpd.conf
將第41行號的public改cdnhub
在56行後面增加一行,內容爲:view systemview included .1
將123行第一個字符#號去掉
保存並退出:wq
4)重新啓動SNMPD 服務:service snmpd restart
5)在mrtg.cdnhub.com添加新的監控條目
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章