CentOS 源码安装 mysql 5.5.x

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。

 


 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值