您的位置:首页 > 运维架构 > Linux

Linux之MySQL源码编译安装

2013-03-08 08:34 751 查看
系统平台:Ubuntu12.04
编译环境:gcc-4.6.3
准备工作:
mysql-5.5.28.tar.gz
cmake-2.8.10.2.tar.gz
ncurses-5.9.tar.gz

由于mysql5.5以上的版本改用cmake编译了,所以要装cmake编译!
此方法适合所有有mysql编译环境的Linux.
---------------------------------
1、安装cmake-2.8.10.2.tar.gz
以root用户进入shell
#tar -zxvf cmake-2.8.10.2.tar.gz
#cd cmake-2.8.10.2
#./configure
#make (无法make,检测gcc编译环境)
#make install
---------------------------------
2、安装ncurses-5.9.tar.gz

#tar -zxvf
ncurses-5.9.tar.gz
#cd
ncurses-5.9

#mkdir
/usr/local/ncurses-5.9/
#./configure
--prefix=/usr/local/ncurses-5.9/
#make
#make install
--------------------
3、安装
mysql-5.5.28.tar.gz
#tar -zxvf
mysql-5.5.28.tar.gz
#cd
mysql-5.5.28
#mkdir -p /usr/local/mysql (创建数据库安装目录)
#mkdir -p /usr/local/mysql/data (存放数据库)

#groupadd mysql
#useradd -r -g mysql mysql
开始编译mysql源码
#cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ -DMYSQL_DATADIR=/usr/local/mysql/data -DCURSES_INCLUDE_PATH=/usr/local/ncurses-5.9/include/ -DCURSES_LIBRARY=/usr/local/ncurses-5.9/lib/libncurses.a

#make
#make install (这部完了mysql就安装好了)
-----------------------
4.配置MySQL
设置目录权限
#cd /usr/local/mysql
#chown -R root:mysql .  (把当前目录中所有文件的所有者所有者设为root,
所属组为mysql)
#chown -R mysql:mysql data
#cp support-files/my-medium.cnf /etc/my.cnf  (将mysql的启动服务添加到系统服务中)

创建系统数据库的表
#cd /usr/local/mysql

#scripts/mysql_install_db --user=mysql
手动启动mysql
#cd /usr/local/mysql

#./bin/mysqld_safe --user=mysql &
# mysqladmin -u root -p shutdown  (停止MySQL服务,这里MySQL的root用户还没有配置密码,所以为空值。需要输入密码时,直接点回车键即可。)
另一种简单的启动mysql的方法(mysql已经被添加到系统服务中)
#cp support-files/mysql.server /etc/init.d/mysql (将mysql的启动服务添加到系统服务中)
# service mysql start 启动mysql服务
# service mysql stop 关闭mysql服务
# service mysql restart 重启mysql服务
把mysql加入环境变量使在shell环境下敲入mysql就进去mysql
#vi /etc/profile
在最后加入
export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH

#wq 保存
#source /etc/profile 刷新配置文件
让后敲入mysql就可以看到mysql控制台操作界面了
修改MySQL的root用户的密码以及打开远程连接
# mysql -u root mysql
mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; (为root添加远程连接的能力。)
mysql>update user set Password = password('root') where User='root'; (设置root用户密码为root,可自定义)
mysql>select Host,User,Password from user where User='root';
mysql>flush privileges;
mysql>exit
重新登录:mysql -u root -proot
若还不能进行远程连接,则关闭防火墙

# /etc/rc.d/init.d/iptables stop



-------------------------------------END--------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql