日期:2014-05-16  浏览次数:20793 次

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) 添加用户和组
[Root@shell]# groupadd mysql 添加组命令
[Root@shell]# useradd mysql -g mysql 添加用户命令
4)  Mysql编译参数
将mysql-5.0.45.tar.gz上传到服务器/root文件,首先解压mysql-5.0.45.tar.gz文件,输入以下命令
[Root@shell]#tar –zvxf mysql-5.0.45.tar.gz
[Root@shell]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) 编译与安装
[Root@shell]#make
[Root@shell]# make install
6) 修改权限
[Root@shell]# chown -R mysql:mysql /usr/local/mysql
7) 初始化数据库、修改权限
[Root@shell]#./scripts/mysql_install_db  --datadir=/var/lib/mysql
chown -R mysql:mysql /var/lib/mysql
8)复制并修改Mysql系统配置文件
[Root@shell]#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
[Root@shell]#cp support-files/mysql.server /etc/rc.d/init.d/mysqld
接着把它的属性改为“x”(executable,可执行)
[Root@shell]#chmod +x /etc/init.d/mysqld
[Root@shell]#chown mysql.mysql /etc/init.d/mysqld
修改/etc/init.d/mysqld (第46、47行)
basedir=/usr/local/mysql
datadir=/var/lib/mysql

10) 最后,运行chkconfig把MySQL添加到你系统的启动服务组里面去。
[Root@shell]#/sbin/chkconfig --add mysqld
11) 服务启动
[Root@shell]# service mysqld start
12) 更改mysql管理员密码
[Root@shell]#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 squid@127.0.0.1 IDENTIFIED BY 'squidsar';
Mysql>flush privileges;
注:数据库名:squid,表名:traffic,用户名squid,密码:squidsar(2008-04-08更新)


7、JAVA Configuration
1)、安装路径
/usr/local/java/
   2)、安装方法