rhel6.4 安装nodejs和Mysql DB服务

安装好redhat6.4虚拟机后, 安装软件:

# yum install gcc-c++ openssl-devel
Loaded plugins: product-id, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
No package openssl-devel available.
Error: Nothing to do

上网查询得知, redhat的yum源是收费的. 因此需要配置本地yum源. 步骤如下:

1) 将安装光盘镜像文件 rhel-server-6.4-x86_64-dvd.iso 上传到RHEL64虚拟机中:

$ scp ./rhel-server-6.4-x86_64-dvd.iso root@vm-ipaddr:~/

2) 在RHEL64虚拟机中挂载 ISO 文件(已将 rhel-server-6.4-x86_64-dvd.iso 移动到 /opt/ 下):

# mount -t iso9660 -o loop /opt/rhel-server-6.4-x86_64-dvd.iso /mnt/repo
# df -h

3) 创建rhel-debuginfo.repo

# vi /etc/yum.repos.d/rhel-debuginfo.repo

输入以下内容

[Server]
name=Red Hat Enterprise Linux Server
baseurl=file:///mnt/repo          #本地iso的挂载路径
enabled=1                         #可以使用yum
gpgcheck=1                        #设置检查gpgkey
gpgkey=file:///mnt/repo/RPM-GPG-KEY-redhat-release         # 配置gpgkey的路径

4) 修改yumRepo.py配置文件

# vi /usr/lib/python2.6/site-packages/yum/yumRepo.py
:802
找到802行, 将下面的语句:
remote = url + ‘/’ + relative
改为:
remote = '/mnt/repo' + '/' + relative

好了, 安装软件试试, 清理缓存:

# yum clean all
# yum install gcc-c++ openssl-devel

一切正常.

5) 为方便, 把这些mount写进 /etc/fstab,以便开机就挂载ISO:

/opt/rhel-server-6.4-x86_64-dvd.iso /mnt/repo iso9660 loop 0 0

==============================================================

下面安装nodejs:

1) 升级系统

# yum install gcc-c++ openssl-devel

2) 下载合适的nodejs包:

# wget http://nodejs.org/dist/v0.10.26/node-v0.10.26-linux-x64.tar.gz

3) 编译nodejs

# tar -zxvf node-v0.10.26-linux-x64.tar.gz
# cd node-v0.10.26
# ./configure
# make && make install

make时出现类似错误:ImportError: No module named bz2

多半是由于python的版本问题,新安装的python版本与系统自带的版本路径冲突,导致代码在import bz2模块时找不到路径。解决方案是通过临时改变PATH路径的方式解决:

$ export PATH=/usr/bin:$PATH

$ make && make install

4) 运行 nodejs

# node --version

使用yum安装mysql

1) 系统自动下载和安装Mysql

安装mysql-client:

# yum -y install mysql

安装mysql-server:

# yum -y install mysql mysql-server mysql-devel
# chgrp -R mysql /var/lib/mysql
# chmod -R 770 /var/lib/mysql

2) 服务启动, 更改root密码
# service mysqld start

第一次root登录不用输入密码:
# mysql -u root

更改root密码,例如: abc123456
mysql> SET PASSWORD FOR 'root'@'*' = PASSWORD('abc123456');

3) 在服务清单中添加mysql服务
# chkconfig --add mysqld

4) 更改root密码,例如: abc123456
# mysqladmin -u root password 'abc123456'

5) 可选: 登陆mysql, 然后删除test数据库
# mysql -u root -pabc123456
mysql> DROP DATABASE test;

删除匿名帐户
mysql> DELETE FROM mysql.user WHERE user = '';

重载权限
mysql> FLUSH PRIVILEGES;

添加mysql用户, 例如:car/abc789

mysql> GRANT ALL PRIVILEGES ON your_db_name.* TO 'car'@'%' IDENTIFIED BY 'abc789';

6) 要机器启动之后,自动启动mysqld:
# chkconfig --levels 345 mysqld on

7) 如要其他机器能访问,在mysql.user中添加一个Host为'%'的user,然后flush priviledges;

mysql> update mysql.user set host='%' where user='car';

mysql> FLUSH PRIVILEGES;

最后防火墙加一句类似这样的语句即可(开通3306端口):

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

8) 给用户赋予binlog权限, 以root登陆db:

mysql>GRANT SUPER, REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO car@'%' IDENTIFIED BY 'abc789';

=============================================================

1. 打开Mysql的binlog:

mysql> show binary logs;
ERROR 1381 (HY000): You are not using binary logging

mysql> show variables like 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | OFF   |
+---------------+-------+
1 row in set (0.00 sec)

在my.cnf文件的[mysqld]下加上一行(windows为mysql.ini)

#vi /etc/my.cnf
[mysqld]

...

#添加这一行就ok了=号后面的路径和名字自己定义吧

log-bin=/var/lib/mysql/mysql-bin-log

# service mysqld restart;

mysql> show variables like 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin       | ON    |
+---------------+-------+
1 row in set (0.00 sec)

mysql> show binlog events;
+----------------------+-----+-------------+-----------+-------------+----------------------------------------------------+
| Log_name             | Pos | Event_type  | Server_id | End_log_pos | Info                                               |
+----------------------+-----+-------------+-----------+-------------+----------------------------------------------------+
| mysql-bin-log.000001 |   4 | Format_desc |         1 |         106 | Server ver: 5.1.66-log, Binlog ver: 4              |
| mysql-bin-log.000001 | 106 | Query       |         1 |         207 | use `test`; insert into bigdata values (1,'zhang') |
+----------------------+-----+-------------+-----------+-------------+----------------------------------------------------+
2 rows in set (0.00 sec)

2. 查看当前工作的logfile名及大小: show binary logs /show master logs;

mysql> show binary logs;
+-----------------+-----------+
| Log_name           | File_size |
+-----------------+-----------+
| bin-log.000011 |    148329 |
+-----------------+-----------+

mysql> show master logs;
+-----------------+-----------+
| Log_name           | File_size |
+-----------------+-----------+
| bin-log.000011 |    148329 |
+-----------------+-----------+

mysql> show binary logs;
ERROR 1381 (HY000): You are not using binary logging ###没有开启binary logs

3. 清除所有binary logs;

1)

mysql> show master logs;
+-----------------+-----------+
| Log_name        | File_size |
+-----------------+-----------+
| log-bin.000001 |    259548 |
| log-bin.000002 |     37200 |
| log-bin.000003 |     74219 |
+-----------------+-----------+
3 rows in set (0.00 sec)

mysql> reset master; (在slave上,用reset slave,之前应stop slave,之后再start slave)
Query OK, 0 rows affected (0.00 sec)

mysql> show master logs;
+-----------------+-----------+
| Log_name        | File_size |
+-----------------+-----------+
| log-bin.000001 |        98 |
+-----------------+-----------+
1 row in set (0.00 sec)

4. 清除指定部分logs:

mysql>purge binary logs to 'log-bin.000012';

将log-bin.000012之前的binary logs清掉;

mysql>purge binary logs before '2011-05-28 12:05:38';

将指定时间之前的binary logs清掉;

5.查看当前binary log的情况:

mysql>show master status;

6. 查看binary logs的内容:

mysql>show binlog events;

命令行下:

#mysqlbinlog /var/log/mysql/log-bin.000140; 或者

#mysqlbinlog --start-datetime='2011-07-01 00:00:00' --stop-datetime='2010-07-15 00:00:00' /var/log/mysql/log-bin.000020 > ./tmp.log

7. 在my.cnf/my.ini中设定binary logs回滚天数:

expire_logs_days = 7

rhel6.4 安装nodejs和Mysql DB服务的更多相关文章

  1. Nodejs连接mysql

    1.首先需要安装nodejs 的mysql包 npm install mysql 2.编写nodejs与mysql交互的代码 var mysql = require('mysql'); var TES ...

  2. Nodejs连接mysql的增、删、改、查操作

    一,创建数据库 Source Database : my_news_test SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ...

  3. NodeJS+Express+mySQL服务端开发详解

    随着NodeJS的发展,现在已经被很多人熟知,NodeJS已经成为了前端开发人员必备的技能.本文不会对NodeJS过多介绍 如果你感兴趣可以访问NodeJS 官网, 维基百科 本文是利用NodeJS+ ...

  4. Linux中数据库的安装和配置(MySQL与Maria DB)

    目录 MySQL和Maria DB的介绍 MySQL和Maria DB的安装 yum源安装MySQL(Centos6.5+Mysql5.1) 源码包安装MySQL yum源安装Maria DB 源码包 ...

  5. 如何安装多个mysql 或者如何更改mysql服务名

    此教程适合免安装版本(压缩包)的mysql: 有的时候你需要一台计算机上安装不同的mysql版本,而不同版本的mysql服务名称都是mysql,安装时会有冲突 解决的办法就是安装的时候更改名字 在命令 ...

  6. 基于RHEL6.3 安装MySQL踩过的坑

    MySQL版本:Percona-Server-5.6.29 OS:RHEL6.3 安装出错 [mysql@oracle ~]$ /home/mysql/scripts/mysql_install_db ...

  7. windows下安装、卸载mysql服务

    将下载下来的mysql解压到指定目录下(如:d:\mysql)安装服务在命令行输入d:\mysql\bin\mysqld -installnet start mysql卸载服务在命令行输入net st ...

  8. (windows)一台电脑上安装两个Mysql服务

    原文:https://my.oschina.net/u/1472917/blog/410732 最近需要在一台电脑上安装两个Mysql服务,需求稍微有些奇怪,但确实很必要.本人原本为了本机测试Word ...

  9. windows 安装nodejs及配置服务

    一.什么是nodejs Node.js是一个Javascript运行环境(runtime).实际上它是对Google V8引擎进行了封装.V8引 擎执行Javascript的速度非常快,性能非常好.N ...

随机推荐

  1. 目标管理体系:OKR

    一.什么是OKR体系? OKR体系的全称是Objectives & Key Results,即目标与关键成果.所谓OKR,O = Objective 可以理解为企业目标,KR =Key Res ...

  2. 在一维坐标轴上有n个区间段,求重合区间最长的两个区间段。

    //重叠区间数 #define N 2 typedef struct arrange { int x; int y; } Arrange; //先按左边界排序,若相等再按右边界排序(升序) int c ...

  3. 两个无序数组分别叫A和B,长度分别是m和n,求中位数,要求时间复杂度O(m+n),空间复杂度O(1) 。

    #include <iostream> using namespace std; /*函数作用:取待排序序列中low.mid.high三个位置上数据,选取他们中间的那个数据作为枢轴*/ i ...

  4. Swift变量名的一种玩法

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 是的,Swift的变量名可以用任何合法的Unicode字符,这 ...

  5. Android实现分享图片和文字的功能

    为了应用的推广,我们经常看到点击分享按钮会出现,比如微博微信等应用的分享二等列表,这是如何实现的呢?这一篇将要详细的介绍. android的实现分享是通过隐式的启动activity. 分享文本 1.a ...

  6. Android简易实战教程--第十二话《代码获取手机总运行内存的大小》

    手机RAM存储,类似于电脑的内存.这一篇,对通过代码获取手机总内存大小做详细介绍. 首先,定义一个engine类,这个类功能就是获取进程信息,包括运行的程序个数,系统总内存,系统剩余总内存.本篇先完成 ...

  7. 关于GCJ02和WGS84坐标系的一点实验

    大家都知道,在兲朝的电子地图的坐标都是经过了一个坐标偏移,叫GCJ_02的东西.在网上发现了将WGS84经纬度转成GCJ02的一个代码,写了个小程序测试了下看看全国各地的偏移量有多大. 关于WGS84 ...

  8. android插件化之路

    概论  插件式开发通俗的讲就是把一个很大的app分成n多个比较小的app,其中有一个app是主app.基本上可以理解为让一个apk不安装也可以被运行.只不过这个运行是有很多限制的运行,所以才叫插件. ...

  9. malloc、calloc、relloc

    1.malloc void * malloc(size_t _Size); malloc函数在堆中分配参数_Size指定大小的内存,单位:字节,函数返回void *指针. 2.calloc void ...

  10. 文件操作(File类等)API摘要

    Console 此类包含多个方法,可访问与当前 Java 虚拟机关联的基于字符的控制台设备(如果有). 虚拟机是否具有控制台取决于底层平台,还取决于调用虚拟机的方式.如果虚拟机从一个交互式命令行开始启 ...