在Ubuntu-12.04.2上编译安装MySQL-5.6.10[安装笔记]_MySQL
在Ubuntu-12.04.2上编译安装MySQL-5.6.10[安装笔记]
以下安装中涉及的几点需要提前说明的问题:
1. 所有下载的文件将保存在 /usr/local/src/ 目录下
2. mysql 将以mysql用户运行,而且将加入 service 开机自动运行
3. mysql 将被安装在 /usr/local/mysql/ 目录下
4. mysql 默认安装使用 utf8 字符集
5. mysql 的数据和日志文件保存在 /var/mysql/ 对应目录下
6. mysql 的配置文件保存于/var/mysql/my.cnf
1: 下载安装编译MySQL源码需要的库
sudo apt-get install build-essential libncurses5-dev cmake
2: 下载并解压MySQL源码包
cd /usr/local/src/
sudo wget -O mysql-5.6.10.tar.gz http://www.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.10.tar.gz/from/http://cdn.mysql.com/
sudo tar -zxvf mysql-5.6.10.tar.gz
sudo /usr/sbin/groupadd mysql
sudo /usr/sbin/useradd -g mysql mysql
sudo mkdir -p /var/mysql/
sudo mkdir -p /var/mysql/data/
sudo mkdir -p /var/mysql/log/
sudo chmod 777 /var/mysql/data
3: 使用cmake生成安装文件
cd mysql-5.6.10
sudo 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_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/var/mysql/data
4: 安装MySQL
sudo make
sudo make install
sudo chmod +w /usr/local/mysql
sudo chown -R mysql:mysql /usr/local/mysql
sudo chown -R mysql:mysql /var/mysql/
sudo ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
sudo cp my-default.cnf /var/mysql/my.cnf (注意:my-large.cnf适用于1G内存左右的服务器,可以根据自己配置情况选用my-large.cnf 或 my-huge.cnf 等不同配置)
sudo cp mysql.server /etc/init.d/mysqld
四. 配置启动MySQL 5.6.10
1. 若有需要请先修改 mysql 的配置 my.cnf
vi /var/mysql/my.cnf
2. mysql 初始化安装
/usr/local/mysql/scripts/mysql_install_db /
--defaults-file=/var/mysql/my.cnf /
--basedir=/usr/local/mysql /
--datadir=/var/mysql/data /
--user=mysql
即系一行
sudo /usr/local/mysql/scripts/mysql_install_db --defaults-file=/var/mysql/my.cnf --basedir=/usr/local/mysql --datadir=/var/mysql/data --user=mysql
3. 将 mysql 加入开机启动
sudo chmod +x /etc/init.d/mysqld
vi /etc/init.d/mysqld (sudo vim /etc/init.d/mysqld 编辑此文件,查找并修改以下变量内容:)
basedir=/usr/local/mysql
datadir=/var/mysql/data
保存退出
sudo chkconfig --add mysqld
===========================================
Error:
sudo: chkconfig:找不到命令
Fixed:
sudo apt-get install chkconfig
===========================================
sudo chkconfig --level 345 mysqld on
===========================================
Error:
/sbin/insserv: 没有那个文件或目录
Fixed:
sudo ln -s /usr/lib/insserv/insserv /sbin/insserv
===========================================
/usr/local/mysql/bin/mysqladmin -u root password new password
eg==>sudo /usr/local/mysql/bin/mysqladmin -u root password 123456
===========================================
Error:
/usr/local/mysql/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/tmp/mysql.sock' exists!Fixed:
Fixed:(本次原因为 系统有mysql的僵尸进程,可以干掉进程或重启)
reboot
===========================================
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
Test:
mysql -u root -p
4. 启动 mysql
sudo service mysqld restart
//至此,安装已经完成
bitsCN.com下一篇: 用来获取豆瓣网上电影信息的简介