Mysql for Linux安装配置之—— 源码安装
1.安装
--假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源码压缩文件
1)先安装cmake(mysql5.5以后是通过cmake来编译的)
# tar -zxv -f cmake-2.8.4.tar.gz
# cd cmake-2.8.4
# ./configure
# make
# make install
2)创建mysql安装目录及数据目录
# mkdir -p /usr/local/mysql --mysql安装目录
# mkdir -p /usr/local/mysql/data --mysql数据目录
3)创建mysql用户及用户组
# groupadd mysql
# useradd -r -g mysql mysql
4)安装mysql
# tar -zxv -f mysql-5.5.10.tar.gz
# cd mysql-5.5.10
# cmake .
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/usr/local/mysql/data
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DEXTRA_CHARSETS=all
-DENABLED_LOCAL_INFILE=1
--注:
上述命令中参数:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql --安装目录
-DINSTALL_DATADIR=/usr/local/mysql/data --数据库存放目录
-DDEFAULT_CHARSET=utf8 --使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci --校验字符
-DEXTRA_CHARSETS=all --安装所有扩展字符集
-DENABLED_LOCAL_INFILE=1 --允许从本地导入数据
# make
# make install
--注:
重新编译时,需要清除旧的对象文件和缓存信息。
# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf
2.配置及管理
1)设置目录权限
# cd /usr/local/mysql
# chown -R root:mysql . //把当前目录中所有文件的所有者所有者设为root,所属组为mysql
# chown -R mysql:mysql data
2)拷贝mysql参数文件
# cp support-files/my-medium.cnf /etc/my.cnf
3)初始化数据库(创建系统数据库)
# cd /usr/local/mysql
# scripts/mysql_install_db --user=mysql
4)设置环境变量
# vi /root/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
#source /root/.bash_profile
5)手动启动和关闭mysql
--启动mysql
# cd /usr/local/mysql
# ./bin/mysqld_safe --user=mysql & --启动mysql,但不能用该命令停止mysql,启动日志写在此文件下:/usr/local/mysql/data/localhost.err
--关闭MySQL服务
# mysqladmin -u root -p shutdown --此时,mysql root用户还没有设置密码,所以为空。输入密码时,直接点回车键即可。
6)通过服务启动和关闭mysql(前提是,mysql已添加至系统服务中)
# service mysql.server start
# service mysql.server stop
# service mysql.server restart
--如运行上述命令时出现:mysql.server 未识别的服务信息,则可能是mysql未添加至系统服务所导致,可通过如下方法添加。
# cp support-files/mysql.server /etc/init.d/mysql --将mysql.server拷贝至系统服务目录/etc/init.d中,并将其命名为mysql
# chkconfig --add mysql
# chkconfig --list
--将mysql服务设定为3、5等级自动启动
# chkconfig --level 35 mysql on
--将mysql服务设定为2、3、4、5等级自动启动
# chkconfig mysql on
--注:
有些系统中,mysql.server在/usr/local/mysql/share/mysql/目录下,而非本文中的/usr/local/mysql/support-files/目录下。
7)修改mysql用户root密码以及开启远程连接授权
# mysql -u root mysql
mysql> use mysql;
mysql> desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; --开启用户root远程连接权限
or
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION; --如不能进行远程连接,且报出错误mysql error number 1130
mysql> update user set Password = password('xxxxxx') where User='root'; --更改用户root密码
mysql> select Host,User,Password from user where User='root';
mysql> flush privileges;
mysql> exit
--注:
如果还不能进行远程连接,可以关闭防火墙试试,命令如下。
# /etc/rc.d/init.d/iptables stop
Mysql for Linux安装配置之—— 源码安装的更多相关文章
- 004-nginx简介、安装配置【源码安装和mac安装】、基本使用
一.概述 1.1.Nginx是什么 Nginx是一款轻量级的Web服务器,也是一款轻量级的反向代理服务器[常用]. 1.2.Nginx能干什么 Nginx能干的事情很多,这里简要罗列一些: 1:直接支 ...
- Redis for linux安装配置之—-源码安装
一‘redis单实例安装配置1.下载redis源码压缩包,并将其上传至服务器/usr/local2.解压redis源码压缩包 # tar -xzvf redis-3.2.12.tar.gz3.进入r ...
- Kali Linux 下安装配置MongoDB数据库 ubuntu 下安装配置MongoDB源码安装数据库
Kali Linux 下安装配置MongoDB数据库 1.下载mongodb.tgz 压缩包: 2.解压到:tar -zxvf mongodb.tgz /usr/local/mongodb 3.创 ...
- mysql基础-新版5.7.10源码安装-记录(一)
0x01 MySQL 从 5.5 版本开始,通过 ./configure 进行编译配置方式已经被取消,取而代之的是 cmake 工具 引用一句话 cmake的重要特性之一是其独立于源码(out-of- ...
- CentOS Linux release 7.3源码安装zabbix
CentOS Linux release 7.3安装zabbix 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 前言: 我去年用用centos6的环境搭建了一下 zabbix3.0 ...
- 【SystemTap】 Linux下安装使用SystemTap源码安装SystemTap
转自 http://blog.csdn.net/zklth/article/details/6248558 文章 http://blog.csdn.net/zklth/archive/2010/09/ ...
- Red hat Linux 安装Node.js 源码安装
1. 下载源码包 http://nodejs.org/dist/v0.10.29/node-v0.10.29.tar.gz 2.准备安装环境,>python2.6, gcc, g++ pytho ...
- nginx安装,手动源码安装
什么是Nginx? Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Ra ...
- ubuntu 16.04安装redis(源码安装)zz
本文转载自: http://www.linuxdiyf.com/linux/22527.html Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Val ...
随机推荐
- HDU 5445 Food Problem(多重背包+二进制优化)
http://acm.hdu.edu.cn/showproblem.php?pid=5445 题意:现在你要为运动会提供食物,总共需要提供P能量的食物,现在有n种食物,每种食物能提供 t 能量,体积为 ...
- JS定时器时间日期钟表
window.onload=function(){ setTime(); setInterval('setTime()',1000); } function checkTime(n){ if(n< ...
- string截取、替换、查找子串函数,find_first_of 用法
1. 截取子串 s.substr(pos, n) 截取s中从pos开始(包括0)的n个字符的子串,并返回 s.substr(pos) 截取s中从从pos开始(包括0)到末尾的所有字符的子串,并返回 2 ...
- HttpDns原理
什么是 DNS DNS(Domain Name System,域名系统),DNS 服务用于在网络请求时,将域名转为 IP 地址.能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的 IP 数 ...
- 用python读写excel的强大工具:openpyxl
最近看到好几次群里有人问xlwt.wlrd的问题,怎么说呢,如果是office2007刚出来,大家用xlsx文件用不习惯,还可以理解,这都10年过去了喂,就算没有进化到office2016,还在用of ...
- springboot 启动报错 java.lang.IllegalStateException: Failed to introspect annotated methods on class org
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ...
- java用毫秒数做日期计算的一个踩坑记录
错误示例: Date today = new Date(); Date nextMonth = new Date(today.getTime() + 30* 1000*60*60*24); print ...
- tomcat热部署.class
本人是在维护公司系统时遇到的问题,由于公司的系统是部署到客户服务器上,而系统中存在的问题又比较多,需要经常维护.如果每次修改完class文件后都需要去重启服务器, 那会给用户的使用造成不便,所以需要使 ...
- oracle的批量操作sql语句
1.批量删除/批量更新 mapper: <update id="updatePrjStateByFPrjId" parameterType="string" ...
- vue定义全局方法 调用其他组件的方法
官网的写法 vue实例.$on就可以在根实例上定义全局方法 this.$root就是获取根实例 如果没有根实例 就表示当前实例 this.$root.$on 不需要.eventHub 不需要下面这 ...