`
wxq594808632
  • 浏览: 260398 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

源码编译安装mysql(适用于5.5全部版本)

阅读更多
1.首先安装cmake
# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz 
# tar zxvf cmake-2.8.4.tar.gz 
# cd cmake-2.8.4 
# ./configure 
# make 
# make install


2.安装前的系统设置

建立mysql安装目录及数据存放目录
# mkdir /opt/mysql 
# mkdir /data/mysql/data 


创建用户和用户组
# groupadd mysql 
# useradd -g mysql mysql 


赋予数据存放目录权限
# chown mysql:mysql -R /data/mysql/data 


3.使用cmake编译mysql
# tar zxvf mysql-5.5.13.tar.gz
# cd mysql-5.5.13 


编译参数:
其中注意安装路径和数据路径是之前建立的

cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql \
-DSYSCONFDIR=/opt/mysql/etc \
-DMYSQL_DATADIR=/data/mysql/data \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DMYSQL_USER=mysql \
-DEXTRA_CHARSETS=all \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1

cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql -DSYSCONFDIR=/opt/mysql/etc -DMYSQL_DATADIR=/data/mysql/data -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1



如果遇到错误信息:
Curses library not found.  Please install appropriate package.

使用yum安装即可
# yum install ncurses-devel


http://www.ui3net.com/basic-installation-of-mysql-from-source/

如果第一次编译失败或者有问题
清理mysql目录下的CMakeCache.txt重新编译即可
# rm -fr CMakeCache.txt


cmake完毕
# make
# make install


到此mysql安装完毕

4.配置并初始化数据库

创建my.cnf配置文件

# mkdir /opt/mysql/log 
# mkdir /opt/mysql/etc 
# cp support-files/my-medium.cnf /opt/mysql/etc/my.cnf


初始化数据库
执行前需赋给scripts/mysql_install_db文件执行权限

# chmod 755 scripts/mysql_install_db 
# scripts/mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/data/mysql/data/


创建管理MySQL数据库的shell脚本

# mkdir /opt/mysql/init.d 
# cp support-files/mysql.server /opt/mysql/init.d/mysql 


赋予shell脚本可执行权限:
# chmod +x /opt/mysql/init.d/mysql 



启动MySQL:
# /opt/mysql/init.d/mysql start 


出现错误:
Starting MySQL..... ERROR! The server quit without updating PID file.

去mysql/data目录下查看对应的.err文件
其中有错误的描述
一把情况下是由于数据创建不完整或者是授权问题
解决方案:
重建数据目录
rm -fr /data/mysql/data
mkdir /data/mysql/data

重新创建mysql基本数据,到mysql目录下执行
chmod 755 scripts/mysql_install_db
scripts/mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/data/mysql/data/
//授权
chmod +x /opt/mysql/init.d/mysql
//启动
/opt/mysql/init.d/mysql start



错误:
/mysql-bin.index' not found (Errcode: 13

数据文件授权的问题。
在错误的日志文件pop1.err中查看出错的原因
一般会指出一个错误的mysql数据路径,比如/opt/mysql/data
错误原因是引文之前授权的目录并没有实际指向mysql的数据路径。
mysql使用的是这个报错的路径,所以没有授权。
如果使用此错误路径的话。直接授权即可

# chmod u+x /opt/mysql/data


如果要指定自定义的数据存放路径。
需要修改服务启动文件

# vim /opt/mysql/init.d/mysql


指定其中的
datadir=/data/mysql/data 


然后授权
# chmod u+x /data/mysql/data


5.修改mysql默认密码等

通过命令行登录管理MySQL服务器(提示输入密码时直接回车):
# /opt/mysql/bin/mysql -u root -p -S /tmp/mysql.sock 


为root帐户设置初始密码
# /opt/mysql/bin/mysqladmin -u root password 'new-password' 


设置mysql开机启动
cp /opt/mysql/init.d/mysql /etc/init.d/mysql
chmod 755 /etc/init.d/mysql
chkconfig mysql on
//重启生效
reboot


输入以下SQL语句,创建一个具有root权限的用户(admin)和密码(12345678):
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY '12345678'; 
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'127.0.0.1' IDENTIFIED BY '12345678'; 

给root用户设置所有ip都能访问
grant all privileges on *.* to root@'%' identified by 'password';

也可以指定ip
grant all privileges on *.* to root@'192.168.1.125' identified by 'password';

指定ip段
grant all privileges on *.* to root@'192.168.1.%' identified by 'password';


删除本机匿名连接的空密码帐号
/opt/mysql/bin/mysql -uroot -p'new-password' 
mysql>use mysql; //选择系统数据库mysql 
mysql>select Host,User,Password from user; //查看所有用户 
mysql>delete from user where password=""; 
mysql>flush privileges; 
mysql>select Host,User,Password from user; //确认密码为空的用户是否已全部删除 
mysql>exit;

分享到:
评论
1 楼 yueliancao 2013-04-01  
  真好 高手

相关推荐

    ltmh:在CentOS Red Hat Debian 和Ubuntu 是一个完全自动化的LTMH LNMH LNMP LTMP 安装脚本

    脚本特点: 不断更新源码编译安装,大部分源码都是最新稳定版,官网下载修复了一些安全问题您可以自由选择安装数据库版本(MySQL-5.6、MySQL-5.5、MariaDB-10.0、MariaDB-5.5) 可以自由选择安装PHP版本(php-5.5、...

    centos系统lnmp环境搭建全套源码包

    适用于centos系统lnmp环境搭建 包含Nginx,PHP,mysql5.5以及相关依赖的全套源码文件,可直接解压编译安装

    阿里云ossjava源码-lempstack:CentOS/RedhatDebian和Ubuntu的LEMP堆栈安装脚本

    源码编译安装,最稳定的源码是最新版本,官网下载 一些安全优化 提供多个数据库版本(MySQL-8.0、MySQL-5.7、MySQL-5.6、MySQL-5.5、MariaDB-10.3、MariaDB-10.2、MariaDB-10.1、MariaDB-5.5、Percona-8.0、Percona-...

    阿里云ossjava源码-lamp:CentOS/RedhatDebian和Ubuntu的LAMP堆栈安装脚本

    源码编译安装,最稳定的源码是最新版本,官网下载 一些安全优化 提供多个数据库版本(MySQL-8.0、MySQL-5.7、MySQL-5.6、MySQL-5.5、MariaDB-10.3、MariaDB-10.2、MariaDB-10.1、MariaDB-5.5、Percona-8.0、Percona-...

    阿里云ossjava源码-oneops:oneops

    源码编译安装,最稳定的源码是最新版本,官网下载 一些安全优化 提供多个数据库版本(MySQL-8.0、MySQL-5.7、MySQL-5.6、MySQL-5.5、MariaDB-10.3、MariaDB-10.2、MariaDB-10.1、MariaDB-5.5、Percona-8.0、Percona-...

    阿里云ossjava源码-lamp:灯

    源码编译安装,最稳定的源码是最新版本,官网下载 一些安全优化 提供多个数据库版本(MySQL-8.0、MySQL-5.7、MySQL-5.6、MySQL-5.5、MariaDB-10.3、MariaDB-10.2、MariaDB-10.1、MariaDB-10.0、MariaDB-5.5、Percona...

    阿里云ossjava源码-need:转载大神的LNMP

    源码编译安装,最稳定的源码是最新版本,官网下载 一些安全优化 提供多个数据库版本(MySQL-8.0、MySQL-5.7、MySQL-5.6、MySQL-5.5、MariaDB-10.3、MariaDB-10.2、MariaDB-10.1、MariaDB-5.5、Percona-8.0、Percona-...

    阿里云ossjava源码-onestack:onestack包括web常用软件的部署包括数据库等

    源码编译安装,最稳定的源码是最新版本,官网下载 一些安全优化 提供多个数据库版本(MySQL-8.0、MySQL-5.7、MySQL-5.6、MySQL-5.5、MariaDB-10.3、MariaDB-10.2、MariaDB-10.1、MariaDB-10.0、MariaDB-5.5、Percona...

    PESCMS Login v1.0.zip

    考虑到不是所有人都懂编译桌面端,PESCMS Login已经自行编译好适用于Win系统的桌面端,大家仅需按照上面部署的过程修改则可。实际使用发现,不少杀毒软件会误将本软件识别为木马病毒,若出现该现象请添加至白名单。 ...

    Java Web编程宝典-十年典藏版.pdf.part2(共2个)

    《Java Web编程宝典(十年典藏版)》适用于Java Web的初学者、编程爱好者,同时也可以作为培训机构、大中专院校老师和学生的学习参考用书。 目录 第1篇 技能学习篇 第1章 驾驭Ja垤Web开发环境 ——开启JavaWeb开发之...

    疯狂JAVA讲义

    6.10 修饰符的适用范围 233 6.11 使用JAR文件 234 6.11.1 jar命令详解 235 6.11.2 创建可执行的JAR包 237 6.11.3 关于JAR包的技巧 238 6.12 本章小结 239 本章练习 239 第7章 Java集合 240 7.1 Java集合概述...

    Python Cookbook

    7.16 适用于各种DB API模块的单参数传递风格 306 7.17 通过ADO使用Microsoft Jet 308 7.18 从Jython Servlet访问JDBC数据库 310 7.19 通过Jython和ODBC获得Excel数据 313 第8章 调试和测试 315 引言 315 8.1 ...

Global site tag (gtag.js) - Google Analytics