debain下编译安装mysql
1. 做好前提准备 安装 需要使用的 ...
#二进制文件( 如果你自己提供的文件,一定要注意不要版本错了)
wget http://dev.mysql.com/get/downloads/mysql-5.5/mysql-5.5.12.tar.gz/from/http://mysql.he.net/
#cmake 编译
wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
wget http://ftp.gnu.org/gnu/bison/bison-2.4.3.tar.gz
apt-get install make // 网络资源地址没找 有的留个
2. 安装cmake
cd /usr/local/
tar zxvf cmake-2.8.4.tar.gz //下载的cmake文件路径
cd cmake-2.8.4
./bootstrap
make
make install
3. 安装 bison
tar zxvf bison-2.4.3.tar.gz
cd bison-2.4.3
./configure
make
make install
1.configure: error: no acceptable c compiler found in $path
原因: 没有安装 gcc 编译器
解决: apt-get install gcc
4 编译安装 mysql
# 创建用户
groupadd mysql
useradd -g mysql mysql
cd /usr/local
tar zxvf ../mysql-5.5.12.tar.gz // 我把二进制文件放在 /usr下面
cd mysql-5.5.12
## 编译二进制文件
cmake -dcmake_install_prefix=/usr/local/mysql /
-dmysql_unix_addr=/tmp/mysql.sock /
-ddefault_charset=utf8 /
-ddefault_collation=utf8_general_ci /
-dwith_extra_charsets:string=utf8,gbk /
-dwith_myisam_storage_engine=1 /
-dwith_innobase_storage_engine=1 /
-dwith_memory_storage_engine=1 /
-dwith_readline=1 /
-denabled_local_infile=1 /
-dmysql_datadir=/var/mysql/data /
-dmysql_user=mysql
make // 这一步时间有点长 (这个文件夹的包含cmakelists.txt)
make install
# 修改用户和权限
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
chmod +w /usr/local/mysql
chown -r mysql:mysql /usr/local/mysql
mkdir -p /var/mysql/
mkdir -p /var/mysql/data/
mkdir -p /var/mysql/log/
chown -r mysql:mysql /var/mysql/
cd support-files/
cp my-large.cnf /var/mysql/my.cnf(如果是debian,my.conf需要放在/etc/mysql/下面)
cp mysql.server /etc/init.d/mysqld
2.fatal error: could not find mysqld (命令提示记得不是太清楚了,意思就是 mysqld命令找不到)
解决方法 ln -sf /usr/local/mysql/bin/* /usr/bin
3 fatal error: could not find errmsg.sys
原因:在特定的路径下面访问不到这个文件, 如果你只是把这一个文件拷贝过去的话 下面还会出现
同样的问题,因为他依赖于 /usr/local/mysql/share 文件夹 我直接拷贝过去, 或者创建软连接
解决方法
cd /usr/share/
mkdir mysql
cd mysql
cp -a /usr/local/mysql/share/* .
4 /usr/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object
file: no such file or directory
安装 libaio-dev
tips
在网上查找原因的时候 说是没有apt-get update , 于是我无知的 apt-get update fuck 无效,写文章
详细点 我这个linux 学徒 表示压力很大
进入下列网址 按照提示 修改 /etc/apt/sources.list
http://packages.debian.org/zh-cn/lenny/i386/libaio-dev/download
写好之后 在 apt-get update
#安装
apt-get install libaio-dev
5. 110518 15:09:27 [error] /usr/local/mysql/bin/mysqld: unknown option '--skip-bdb'
解决方法 vim /etc/mysql/my.cnf 将 skip-bdb 那行 注释掉
cary:/usr/local/mysql# scripts/mysql_install_db --datadir=/var/mysql/data/ --basedir=/usr/local/mysql
--user=mysql
启动数据库
/etc/init.d/mysqld start
这是我模拟的异常信息
/etc/init.d/mysqld: line 276: cd: /usr/local/mysq1l: no such file or directory
解决方法 vim /etc/mysql/my.cnf 下mysqld 的配置参数 要和上面你安装的 配置参数一致
如 my.cnf 中
[mysqld]
....
basedir = /usr/local/mysq1l 参数改为 你上面配置的 /usr/local/mysql
修改管理员密码
mysqladmin -uroot password '123456'
starting mysql....the server quit without updating pid file (/var/run/mysqld/mysqld.pid). failed!
解决方法
pkill -f mysql
rm /var/run/mysql/*
重新启动 mysql
如果你下载好的是编译好的文件 那么你就不需要cmake 编译 可以跳过那一步
创建远程用户登录不了
vim /etc/mysql/my.cnf
将 bind-address 127.0.0.1 注释掉
bitscn.com
