centos下mysql 5源码安装全过程记录
参考:http://blog.csdn.net/mycwq/article/details/24488691
- 安装cmake,mysql 5.5以后的版本要通过cmake进行编译
在新装的CentOS 5.7系统中,先安装了nginx(含nginx必备依赖:gzip 模块需要 zlib 库;rewrite 模块需要 pcre 库;ssl 功能需要 openssl 库),结果安装cmake过程中在./bootstrap这一步无法通过,原因未知。后通过VM快照恢复到未安装nginx前,顺利安装cmake。
安装步骤:
- 官网下载http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
- tar zxvf cmake-2.8.10.2.tar.gz
- cd cmake-2.8.10.2
- ./bootstrap
- make
- make install
- cmake –h 验证安装结果
- 开始安装mysql
官网下载源码安装包:https://cdn.mysql.com//Downloads/MySQL-5.5/mysql-5.5.57.tar.gz
安装mysql
- [root@local ~]# wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.37.tar.gz
- [root@local ~]# tar xvf mysql-5.5.37.tar.gz
- [root@local ~]# cd mysql-5.5.37
- [root@local mysql-5.5.37]# cmake ./
可能还会报这个错,没有就跳过
- CMake Error at cmake/readline.cmake:83(MESSAGE):
- Curses library not found. Pleaseinstall appropriate package,
- remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name islibncurses5-dev, on Redhat and derivates it is ncurses-devel.
- Call Stack (most recent call first):
- cmake/readline.cmake:127 (FIND_CURSES)
- cmake/readline.cmake:217 (MYSQL_USE_BUNDLED_LIBEDIT)
- CMakeLists.txt:355 (MYSQL_CHECK_READLINE
- -- Configuring incomplete, errors occurred!
- See also "/root/my/mysql-5.5.37/CMakeFiles/CMakeOutput.log".
- See also"/root/my/mysql-5.5.37/CMakeFiles/CMakeError.log".
说明centos系统没有ncurses-devel
- [root@local ~]# wget http://invisible-island.net/datafiles/release/ncurses.tar.gz
- [root@local ~]# cd ncurses-5.9
- [root@local ncurses-5.9]#./configure
- [root@local ncurses-5.9]# make
- [root@local ncurses-5.9]# make install
再删除刚才编译生成的 CMakeCache.txt 文件,否则无法进行下一步
- [root@local mysql-5.5.37]# rm -f CMakeCache.txt
继续编译mysql
- [root@local ~]# cmake ./
- [root@local ~]# make
- [root@local ~]# make install
这样,mysql默认将成功安装到/usr/local/mysql
创建mysql用户组
- [root@local ~]# groupadd mysql
- [root@local ~]# useradd –r –g mysql mysql
- [root@local ~]# chown –R mysql.mysql /usr/local/mysql
启动mysql
- [root@local ~]# /usr/local/mysql/bin/mysqld_safe --user=mysql
这里可能会发生错误,没有就跳过:
- FATAL ERROR: Could not find./bin/my_print_defaults
- If you compiled from source, you need torun 'make install' to
- copy the software into the correct locationready for operation.
- If you are using a binary release, you musteither be at the top
- level of the extracted archive, or pass the --basedir option
- pointing to that location.
解决方法:
- [root@local ~]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
再启动mysql
- [root@local ~]# /usr/local/mysql/bin/mysqld_safe --user=mysql
注册mysql服务,开机自动启动
1.设置mysql配置文件到/etc目录
- [root@local ~]# cp /usr/local/mysql/support-files/my-medium.cnf/etc/my.cnf
2.设置mysql开机自启
- [root@local ~]# cp/usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
- [root@local ~]# chmod +x /etc/init.d/mysql
- [root@local ~]# /sbin/chkconfig --add mysql
3.启动mysql服务
- [root@local ~]# service mysql start
测试mysql是否安装成功
- [root@local ~]# /usr/local/mysql/bin/mysql -u root -p
- Enter password:
- Welcome to the MySQL monitor. Commands end with ; or \g.
- Your MySQL connection id is 1
- Server version: 5.5.37 Source distribution
- Copyright (c) 2000, 2014, Oracle and/or itsaffiliates. All rights reserved.
- Oracle is a registered trademark of OracleCorporation and/or its
- affiliates. Other names may be trademarksof their respective
- owners.
- Type 'help;' or '\h' for help. Type '\c' toclear the current input statement.
- mysql> show databases;
- +--------------------+
- | Database |
- +--------------------+
- | information_schema |
- | mysql |
- | performance_schema |
- | test |
- +--------------------+
- 4 rows in set (0.03 sec)
参考:
http://blog.csdn.net/mycwq/article/details/24488691
最后启动mysql的时候报错,出现The server
quit without updating PID file错误
解决过程:http://blog.sina.com.cn/s/blog_637e04c9010117ri.html
[root@localhost ~]# cd
/usr/local/mysql
[root@localhost mysql]# chown
-R mysql.mysql .
[root@localhost mysql]# su - mysql
[mysql@localhost ~]$ cd
/usr/local/mysql
[mysql@localhost mysql]$ scripts/mysql_install_db
Installing MySQL system tables...
OK
Filling help tables...
OK
To start mysqld at boot time you
have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD
FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
./bin/mysqladmin -u root password
'new-password'
./bin/mysqladmin -u root -h localhost.localdomain password 'new-password'
Alternatively you can run:
./bin/mysql_secure_installation
which will also give you the option
of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more
instructions.
You can start the MySQL daemon
with:
cd . ; ./bin/mysqld_safe &
You can test the MySQL daemon with
mysql-test-run.pl
cd ./mysql-test ; perl mysql-test-run.pl
Please report any problems with the
./bin/mysqlbug script!
[mysql@localhost mysql]$ /usr/local/mysql/bin/mysqld_safe
--user=mysql &
[1] 11767
[mysql@localhost mysql]$ 120502 07:01:17 mysqld_safe Logging to
'/usr/local/mysql/data/localhost.localdomain.err'.
120502 07:01:17 mysqld_safe Starting mysqld daemon with databases from
/usr/local/mysql/data
[mysql@localhost mysql]$ /etc/rc.d/init.d/mysql status
MySQL running
(11830) [ OK ]
[mysql@localhost mysql]$ /etc/rc.d/init.d/mysql start
Starting
MySQL [ OK ]
最后这里↗$ /etc/rc.d/init.d/mysql
start可能需要切回root用户才能成功启动
额外配置
如果非本地环境无法登陆mysql,做如下更改
1.Centos中防火墙开放3306端口:
-A INPUT -p tcp
-m tcp --dport 3306 -j ACCEPT
2.Mysql中允许root用户任意IP登陆:
Update user set
host=”%” where user=”root”;
3. mysql取消表名区分大小写
修改 /etc/my.cnf:在[mysqld]节点下,加入一行: lower_case_table_names=1
4.使用mysql-workbench工具导入.sql文件
方法2:
CentOS7安装MySql 5.5.60
http://www.cnblogs.com/Troy-Lv5/p/9273235.html
http://ftp.ntu.edu.tw/MySQL/Downloads
centos下mysql 5源码安装全过程记录的更多相关文章
- linux下mysql的源码安装
mysql有多中安装方法,本文只涉及编译安装,对其他方法感兴趣的可以自行百度. 1.首先获取mysql软件安装包,这里用wget下载 [root@localhost ~]# wget http://d ...
- CentOS下二进制包/源码安装方式的MySQL卸载步骤
查看当前系统mysql 运行状态 [root@zendlinux ~]# ps -ef |grep mysql root 1153 1 0 15:40 ? 00:00:00 /bin/sh /usr/ ...
- CentOS下MySQL 5.7编译安装
CentOS下MySQL 5.7编译安装 文章目录 安装依赖包 下载相应源码包 添加mysql用户 预编译 编译安装 启动脚本,设置开机自启动 /etc/my.cnf,仅供参考 初始化数据库 设置 ...
- LinuxMint下的Orionode源码安装
1. Orionode介绍 Eclipse-orion是Eclipse项目下面的一个子项目,orion是一个在在线版的代码编辑环境.其介绍参考http://wiki.eclipse.org/Orion ...
- CentOS 下 MySQL 5.7 编译安装
MySQL5.7主要特性: 1—更好的性能:对于多核CPU.固态硬盘.锁有着更好的优化,每秒100W QPS已不再是MySQL的追求,下个版本能否上200W QPS才是吾等用户更关心的 2—更好的In ...
- 【MySQL】源码安装
操作系统:Red Hat Enterprise Linux Server release 6.5 Mysql安装包:mysql-5.6.4-m7.tar.zip,下载地址:http://pan.bai ...
- LinuxMint下Apache Http源码安装过程
1. 源码包下载 Apache Http安装要求必须安装APR.APR-Util.PCRE等包. Apache Http包下载地址:http://httpd.apache.org/download.c ...
- 转:php 5.5源码安装全过程
下载 PHP 源码包 # wget http://cn2.php.net/distributions/php-5.5.15.tar.bz2 # tar xf php-5.5.15.tar.bz2 -C ...
- 基于centos 创建stress镜像——源码安装stress
上一篇文章进行了yum安装stress,这次对stress进行源码编译安装,并且生成新的镜像 创建Dockerfile目录 [vagrant@localhost ~]$ mkdir -p /tmp/s ...
随机推荐
- mysql设置指定ip访问,用户权限相关操作
基础语法GRANT priv_type ON database.table TO user[IDENTIFIED BY [PASSWORD] 'password'] [,user [IDENTIFIE ...
- mybatis传入某一列的值,然后设置这一列的值是这个
select '${action}' as action from table name parameterType="map"可以指定为map,然后这边就可以用${xxx}来取值 ...
- vuex是什么?怎么使用?哪种功能场景使用它?
vuex是vue框架中状态管理.在main.js引入store,注入.新建了一个目录store,...export.应用场景有:单页应用中,组件之间的状态.应用实例:音乐播放.登录状态.加入购物车等等
- basename 命令
basename命令的作用是获取脚本的名字 basename 作用:从给定的包含绝对路径的文件名中去除路径,然后返回剩下的文件名 [root@salt-client- sh1]# basename / ...
- android仿支付宝输入车牌号
这个是iOS的效果图,差异不大,楼主主攻OC,见谅 需要用到的xml文件 需要用到的类 number_or_letters.xml <?xml version="1.0" e ...
- MySQL中的数据类型以及完整性约束
数据类型 数据库mysql中也是分很多数据类型的,最常用的就是:数字类型.字符类型.日期类型.枚举与集合类型 一.数字类型: 默认都是有符号的,即正负号,若想无符号,在创建表时加unsigned.指定 ...
- NancyFx-打造小型 WebAPI 與 Microservice 的輕巧利器
https://github.com/NancyFx/Nancy 在做非網站系統整合時,我很愛用一招:寫個 Process 提供 WebAPI 介面給其他系統呼叫,不管你用什麼烏語言鬼平台,怎麼可能找 ...
- WD 蓝盘、绿盘、黑盘、红盘的区别
绿盘,蓝盘.黑盘和红盘是西部数据根据旗下所产硬盘的特点所做的分类,通俗点讲:所谓的黑盘.蓝盘.绿盘.红盘就是指的西部数据硬盘上贴的那张纸,是黑色.蓝色.绿色.或红色. 黑盘:高性能,大缓存,速度快.代 ...
- 自己实现strtok函数
思路:每次在原来字符串中查找分隔字符串,将分隔字符串中所有字符设为'\0',然后输出分隔串前的子串,同时更新原串的起始位置. PS:有不少博客作者自己实现的方法中往往只将分隔串当做一个字符,实际上可以 ...
- drf权限组件
1.简介 设置哪种用户的权限可以做什么事 2.用法 在MyAuth文件编写权限类, from rest_framework.permissions import BasePermission 代码如下 ...