1.安装需要的库
yum install gcc gcc-c++
yum install ncurses-devel
wget http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz
wget http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz
安装cmake
tar zxvf cmake-2.8.7.tar.gz
cd cmake-2.8.7
./bootstrap或./configure
make && make install
继续安装bison
tar zxvf bison-2.5.tar.gz
cd bison-2.5
./configure
make && make install
〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
2.安装MYSQL
下载MYSQL
cd /mysql
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.27.tar.gz/from/http://mysql.mirror.rafal.ca/
解压mysql-5.5.27.tar.gz
tar -zvxf mysql-5.5.27.tar.gz
配置编译(参考:http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html)
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/usrl/local/mysql/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_USER=mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
make && make install
〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
3.mysql初始配置
groupadd mysql
useradd -r -g mysql mysql
cd /usr/local/mysql
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
mkdir -p /usr/local/mysql
mkdir -p /usr/local/mysql/data/
mkdir -p /usr/local/mysql/log/
chown -R mysql:mysql .
初始化数据库
./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/mysql --user=mysql
cp support-files/my-large.cnf my.cnf
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/init.d/mysqld
chown -R mysql:root .
安装完成有时无法使用mysq或mysqladminl命令,则映射一个到/usr/bin目录下即可
ln -s /usr/local/mysql/bin/mysql /usr/bin
ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
service mysqld start
mysqladmin -u root password
在/usr/local/mysql/my.cnf 中的[mysqld]后添加添加lower_case_table_names=0,重启MYSQL服务,区分表名的大小写;
lower_case_table_names = 0
其中 0:区分大小写,1:不区分大小写
〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
错误解决
1 error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file
如出现类似错误问题:error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file
首先确定 libmysqlclient.so.18确实存在,出现这种错误可能是没有加载上或加载的是以前的,通过下列方法解决:
解决办法:提示上看是找不到文件 libmysqlclient.so.18,从安装目录里找到 libmysqlclient.so.18
cp /usr/loca/mysql/lib/mysql/libmysqlclient.so.18 /usr/lib/
执行ldconfig -v 更新配置
2.120824 03:20:18 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
/usr/local/mysql5/bin/mysqld: Table 'mysql.plugin' doesn't exist
120824 3:20:18 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
120824 3:20:18 InnoDB: The InnoDB memory heap is disabled
Access denied for user 'mysql'@'localhost' (using password: YES)
1)忽略表检查
/usr/local/mysql/bin/mysqld --datadir=/usr/local/mysql/data --user=mysql --skip-grant-tables &
2)升级数据库
mysql_upgrade
3)强制杀掉已开启的进程
4)/usr/local/mysql/bin/mysqld_safe --skip-grant-tables
5)mysql
mysql>update user set password=password("123456") where user="root";
mysql>flush privileges;
mysql>grant all privileges on *.* to 'root'@'localhost' identified by '123456' with grant option;
mysql>flush privileges;
mysql>quit;
再运行服务,OK。