MySQL5.5编译安装

#1.2 cmake软件
cd /home/oldboy/tools/
tar xf cmake-2.8.8.tar.gz
cd cmake-2.8.8
./configure
#CMake has bootstrapped. Now run gmake.
gmake
gmake install
cd ../ #1.3依赖包
yum install ncurses-devel -y #1.4创建用户和组
groupadd mysql
useradd mysql -s /sbin/nologin -M -g mysql #1.5解压编译MySQL
tar zxf mysql-5.5.32.tar.gz
cd mysql-5.5.32
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.32 \
-DMYSQL_DATADIR=/application/mysql-5.5.32/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.5.32/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \
-DENABLED_LOCAL_INFILE=ON \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FAST_MUTEXES=1 \
-DWITH_ZLIB=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0 #-- Build files have been written to: /home/oldboy/tools/mysql-5.5.32
提示,编译时可配置的选项很多,具体可参考结尾附录或官方文档:
make
#[100%] Built target my_safe_process
make install
ln -s /application/mysql-5.5.32/ /application/mysql chown -R mysql.mysql /application/mysql/data
chmod -R 1777 /tmp
cp support-files/my-large.cnf /etc/my.cnf
cd scripts/
./mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
/bin/cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
/etc/init.d/mysqld start 如果上述操作未出现错误,则MySQL5.5.32软件cmake方式的安装就算成功了。

MySQL5.5二进制安装

useradd mysql -s /sbin/nologin -M
mkdir /data/tools/ -p
wget http://download.xuliangwei.com/mysql-5.5.32-linux2.6-x86_64.tar.gz
tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz
mv mysql-5.5.32-linux2.6-x86_64 /data/mysql-5.5.32
ln -s /data/mysql-5.5.32/ /data/mysql
chown -R mysql.mysql /data/mysql/
/data/mysql/scripts/mysql_install_db --basedir=/data/mysql/ --datadir=/data/3306/ --user=mysql
\cp /data/mysql/support-files/mysql.server /etc/init.d/mysqld
sed -i 's#/usr/local/mysql#/data/mysql#g' /data/mysql/bin/mysqld_safe /etc/init.d/mysqld
\cp /data/mysql/support-files/my-small.cnf /etc/my.cnf
echo 'export PATH=/data/mysql/bin:$PATH' >/etc/profile.d/mysqld.sh
sh /etc/profile.d/mysqld.sh
/etc/init.d/mysqld start
mysqladmin password 123456
mysql -uroot -p123456
mysql #二进制安装详解 1.安装mysql
ls mysql-5.5.32-linux2.6-x86_64.tar.gz
tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz
mv mysql-5.5.32-linux2.6-x86_64 /data/mysql-5.5.32
ln -s /data/mysql-5.5.32 /data/mysql
##########相当于编译步骤的make install完成############# 2.创建用户和目录
useradd mysql -s /sbin/nologin -M
chown -R mysql.mysql /data/mysql/data/ 3.初始化数据库
cd /data/mysql
./scripts/mysql_install_db --user=mysql --basedir=/data/mysql --datadir=/data/mysql/data/
\cp support-files/my-small.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
sed -i 's#/usr/local/mysql#/data/mysql#g' /data/mysql/bin/mysqld_safe /etc/init.d/mysqld
/etc/init.d/mysqld start
netstat -lntup|grep mysql
cp -a /data/mysql/bin/* /usr/local/sbin/
mysqladmin password oldboy123
mysql -uroot -poldboy123 ##mysql安装报错 Installing MySQL system tables.../application/mysql//bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方法: yum -y install libaio /application/mysql//bin/mysqld: Can't create/write to file '/tmp/ibIgpX1g' (Errcode: 13 - Permission denied)
2015-09-28 02:53:35 7f5cb05e6720 InnoDB: Error: unable to create temporary file; errno: 13
2015-09-28 02:53:35 1170 [ERROR] Plugin 'InnoDB' init function returned error.
2015-09-28 02:53:35 1170 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2015-09-28 02:53:35 1170 [ERROR] Unknown/unsupported storage engine: InnoDB
2015-09-28 02:53:35 1170 [ERROR] Aborting
解决方法:chmod 1777 /tmp/ ##mysql启动报错
Starting MySQL.The server quit without updating PID file (/[FAILED]ql/darker.pid).
InnoDB: mmap(137363456 bytes) failed; errno 12
[ERROR] InnoDB: Cannot allocate memory for the buffer pool
[ERROR] Plugin 'InnoDB' init function returned error.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
[ERROR] Unknown/unsupported storage engine: InnoDB
[ERROR] Aborting
解决:vim /etc/my.cnf innodb_buffer_pool_size = 8M 修改innodb为8M,内存过小导致无法启动

MySQL5.5多实例安装

1.安装单实例MySQL
useradd mysql -s /sbin/nologin -M
mkdir /application/tools/ -p
cd /application/tools/
tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz
mv mysql-5.5.32-linux2.6-x86_64 /application/mysql-5.5.32
ln -s /application/mysql-5.5.32/ /application/mysql
chown -R mysql.mysql /application/mysql/
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
\cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe /etc/init.d/mysqld
\cp /application/mysql/support-files/my-small.cnf /etc/my.cnf
echo 'export PATH=/application/mysql/bin:$PATH' >/etc/profile.d/mysqld.sh 2.配置多实例
mkdir /data/{3306,3307}/data -p 创建多实例目录
解压已经准备好的data包
[root@MySQL01 application]# find /data/ -type f -name "mysql"|xargs chmod +x
[root@MySQL01 application]# chown -R mysql.mysql /data/
[root@MySQL01 ~]# cd /application/mysql
[root@MySQL01 ~]#./scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/data/3306/data --user=mysql
[root@MySQL01 ~]#./scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/data/3307/data --user=mysql 3.增加一个MySQL 3309端口实例过程如下:
mkdir -p /data/3308/data
\cp /data/3306/my.cnf /data/3308/
\cp /data/3306/mysql /data/3308/
sed -i 's/3306/3308/g' /data/3308/my.cnf
sed -i 's/3306/3308/g' /data/3308/mysql
sed -i 's#server-id = 1#server-id = 8#g’ /data/3308/my.cnf
chown -R mysql:mysql /data/3308
chmod 700 /data/3308/mysql
cd /application/mysql
./scripts/mysql_install_db --datadir=/data/3308/data --basedir=/application/mysql --user=mysql
chown -R mysql:mysql /data/3308
/data/3308/mysql start
netstat -lnt|grep 3308
如果没起来看mysql错误日志,在/data/3308/my.cnf最下面有错误日志地址
echo "#mysql multi instances" >>/etc/rc.local
echo "/data/3306/mysql start" >>/etc/rc.local
echo "/data/3307/mysql start" >>/etc/rc.local 4.增加一个MySQL 3309端口实例过程如下:
mkdir -p /data/3309/data
\cp /data/3306/my.cnf /data/3309/
\cp /data/3306/mysql /data/3309/
sed -i 's/3306/3309/g' /data/3309/my.cnf
sed -i 's/3306/3309/g' /data/3309/mysql
sed -i 's#server-id = 1#server-id = 9#g' /data/3309/my.cnf
chown -R mysql:mysql /data/3309
chmod 700 /data/3309/mysql
cd /application/mysql
./scripts/mysql_install_db --datadir=/data/3309/data --basedir=/application/mysql --user=mysql
chown -R mysql:mysql /data/3309
/data/3309/mysql start
netstat -lnt|grep 3309
如果没起来看mysql错误日志,在/data/3309/my.cnf最下面有错误日志地址
echo "#mysql multi instances" >>/etc/rc.local
echo "/data/3306/mysql start" >>/etc/rc.local
echo "/data/3307/mysql start" >>/etc/rc.local
echo "/data/3309/mysql start" >>/etc/rc.local

MySQL5.5多实例主从

1.备主库
mysqldump -A -uroot -p'123456' -S /data/3306/mysql.sock --master-data=2 >/opt/alldb20161122.sql 2.把整个备份文件恢复到从库
mysql -uroot -p123456 -S /data/3307/mysql.sock < /opt/alldb20161122.sql 3.过滤出binlog位置和master_log_pos位置点
grep -i 'change master' /opt/alldb20161122.sql |head -n 1
-- CHANGE MASTER TO MASTER_LOG_FILE='binlog.000001', MASTER_LOG_POS=250; 4.主库授权
grant all on *.* to 'repl'@'%' identified by '123456'; 5.配置从库
CHANGE MASTER TO MASTER_HOST=’10.8.2.78’, MASTER_USER='repl',MASTER_PASSWORD=‘123456’, MASTER_LOG_FILE='binlog.000001', MASTER_LOG_POS=250; slave start; 6.检查从库
show slave status\G

MySQL5.5安装与多实例的更多相关文章

  1. 如何在Windows下安装MySQL5和MySQL8的多实例

    MySQL5和MySQL8多实例安装方法: 1.首先下载MySQL5和MySQL8 官方下载链接:https://dev.mysql.com/downloads/mysql/  下载旧版本: 下载好后 ...

  2. linux mysql5.5安装与配置(转帖,在网上收集,自用)

    MySQL是一个关系型数据库管理系统 ,由瑞典MySQL AB公司开发,目前属于Oracle 公司.MySQL分为社区版和商业版,由于其体积小.速度快.总体拥有成本低,尤其是开放源码 这一特点,一般中 ...

  3. MySql5.5安装详细说明

      双击MySql5.5安装文件开始: next 打勾,Next 选Custom,原因如下面所述: Typical(典型安装) Installs the most common program fea ...

  4. Linux平台下源码安装mysql多实例数据库

    Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...

  5. MySQL5.5安装图解

    MySQL5.5安装图解... ====================== 第一部分:去官网下载MySQL安装包... MySQL下载官网:https://dev.mysql.com/downloa ...

  6. MySQL5.6与MySQL5.7安装的区别

    一.MySQL5.6与MySQL5.7安装的区别 1.cmake的时候加入了boost 下载boost.org 2.初始化时 cd /application/mysql/bin/mysql 使用mys ...

  7. SQL:安装多个实例,修改实例端口号,和IP加端口号连接实例

    sql server 安装第一个实例,默认实例的端口是1433, 一个库中如果有多个实例,从第二个实例开始的端口是动态端口,需要的话,自己手工指定为静态端口,如指定第二个实例为1434 或着随意一个如 ...

  8. MySQL5.6安装步骤

    MySQL5.6安装步骤(windows7/8_64位) 1. 下载MySQL Community Server 5.6.11 2. 解压MySQL压缩包 将以下载的MySQL压缩包解压到自定义目录下 ...

  9. mysql5.6安装

    mysql5.6安装 #卸载原有的mysqlyum remove mysql*ls /etc/my.cnf*mv /etc/my.cnf* /tmp/ #安装依赖包yum install make c ...

随机推荐

  1. 如何定位BAD_ACCESS

    1.访问了野指针,比如对一个已经释放的对象执行了release.访问已经释放对象的成员变量或者发消息. 死循环 如何调试BAD_ACCESS错误 1.重写object的respondsToSelect ...

  2. 安卓开发 报错 错误:This version of android studio is incompatible with the gradle version used. 的解决

    本文的解决方法主要参考以下文章: https://blog.csdn.net/sinat_15417921/article/details/51907728 Android 开发总是会遇到各种不知道怎 ...

  3. 用两个stack实现一个队列

    class Queue { stack<int> input, output; public: void push(int x) { input.push(x); } void pop(v ...

  4. Android Hook神器:XPosed入门与登陆劫持演示

    前段时间写了一篇关于Cydia Substrate广告注入的文章,大家都直呼过瘾.但是,真正了解这一方面的同学应该知道,其实还有一个比Cydia Substrate更出名的工具:XPosed. 不是因 ...

  5. 报错【Expression user.achievement is undefined on 】

  6. BZOJ3998 TJOI2015 弦论 【后缀自动机】【贪心】

    Description 对于一个给定长度为N的字符串,求它的第K小子串是什么. Input 第一行是一个仅由小写英文字母构成的字符串S 第二行为两个整数T和K,T为0则表示不同位置的相同子串算作一个. ...

  7. KeyDown/PreviewKeyDown事件中监听Alt键按下

    一个坑 在WPF应用程序(或者其他Windows应用程序中),为了监听Alt键按下,我们可以尝试写出这样的代码: PreviewKeyDown += (s, e) => { if (e.Key ...

  8. LG1155 双栈排序

    题意 Tom最近在研究一个有趣的排序问题.如图所示,通过2个栈\(S_1\)和\(S_2\),Tom希望借助以下4种操作实现将输入序列升序排序. 操作a 如果输入序列不为空,将第一个元素压入栈\(S_ ...

  9. 使用service&scope 进行注入

    @service 声明该类为一个bean,bean的名称为类名首字母小写(customerService) @Scope("prototype")则声明为一个原子类型,既每个get ...

  10. WebSocket的使用

    WebSocket是长连接,如果客户端的程序没有数据实时同步的需求就没必要使用它.因为长连接会带来一定的服务器内存开销.如果Ajax就能轻松搞定的话就完全没必要兴师动众的搞WebSocket. htt ...