toxic

备忘录

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

由于mysql5.5开始,不再使用configure安装,而是使用cmake。所以需要先安装cmake

wget http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz
tar -zxvf cmake-2.8.6.tar.gz
cd cmake-2.8.6/
./configure
make && make install

 

cmake安装mysql(我已经下载好了mysql源码文件,放在U盘里,拷贝到/tmp目录下)

/进入/tmp目录下
安装前请检查是否有安装ncurses-devel 包
tar -zxvf mysql-5.5.25.tar.gz
cd mysql-5.5.25

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql \
-DMYSQL_DATADIR=/user/local/webserver/mysql/data \
-DSYSCONFDIR=/etc \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DMYSQL_TCP_PORT=3306 \
-DWITH_DEBUG=0 \
-DENABLED_LOCAL_INFILE=1
 
 
回车执行,执行完成后继续执行 make && make install
#设置Mysql
#在support-files目录中有五个配置信息文件(这里很重要,一定要根据自己的内存复制对应的cnf文件,否则mysql始终起不来):
#my-small.cnf (内存<=64M)
#my-medium.cnf (内存 128M)
#my-large.cnf (内存 512M)
#my-huge.cnf (内存 1G-2G)
#my-innodb-heavy-4G.cnf (内存 4GB)
cd /usr/local/webserver/mysql
cp ./support-files/my-huge.cnf /etc/my.cnf 
vi /etc/my.cnf
#在 [mysqld] 段增加
datadir =  /usr/local/webserver/mysql/data
wait-timeout = 30
max_connections = 512
default-storage-engine = MyISAM
#在 [mysqld] 段修改
max_allowed_packet = 16M 
//添加mysql运行的用户和用户组
groupadd mysql
useradd -g mysql mysql -s /bin/false -d /home/mysql  //没有shell,不可本机登陆(安全起见)

cd /usr/local/webserver/mysql
chown -R root .
chown -R mysql data
chgrp -R mysql .

//生成新的mysql授权表
//进入mysql安装目录下的脚本目录
cd /usr/local/webserver/mysql/scripts
//利用mysql_install_db脚本生成新的mysql授权表
./mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/usr/local/webserver/mysql/data --user=mysql

//mysql server在系统中的服务项设置
//复制服务文件并修改
cd /usr/local/webserver/mysql/support-files
cp mysql.server mysqld
//修改mysqld
basedir=/usr/local/webserver/mysql
datadir=/usr/local/webserver/mysql/data

mv mysqld /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld

//设置软连接使mysql,  mysqldump,  mysqladmin这三个bin命令能在shell中直接运行
sudo ln -s /usr/local/webserver/mysql/bin/mysql /usr/bin
sudo ln -s /usr/local/webserver/mysql/bin/mysqldump /usr/bin
sudo ln -s /usr/local/webserver/mysql/bin/mysqladmin /usr/bin

rm -rf /etc/mysql/my.cnf 因为已经把此文件复制到/etc/my.cnf  如果不删除的话,mysql启动不起来。
/etc/init.d/mysqld start

//设置root密码
mysqladmin -u root password "admin"

//mysql数据库中文乱码解决
vi /etc/my.cnf
//然后在[mysqld]配置选项下添加
character-set-server=utf8


//然后进入mysql
cd /usr/local/webserver/mysql/bin
mysql -u root -p
提示输入密码
mysql> show variables like '%character%';
//结果:character_set_database,character_set_server两项都变为utf8了

 

posted on 2012-08-13 16:18  toxic  阅读(193)  评论(0)    收藏  举报