Rumah > pangkalan data > tutorial mysql > 详细介绍centos编译安装mysql5.6及安装多个mysql的示例代码分享

详细介绍centos编译安装mysql5.6及安装多个mysql的示例代码分享

黄舟
Lepaskan: 2017-03-25 13:51:46
asal
1162 orang telah melayarinya

这篇文章主要介绍了centos编译安装mysql 5.6及安装多个mysql实例详解,需要的朋友可以参考下

--1.为mysql新建组和用户

# useradd -M -s /sbin/nologin mysql
Salin selepas log masuk

--2.安装需要的库,编译器

# yum install ncurses-devel openssl-devel cmake -y
Salin selepas log masuk

--3.解压

# tar zxvf mysql-5.6.35.tar.gz
# cd mysql-5.6.35
Salin selepas log masuk

--4.编译安装

# cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_USER=mysql \
-DWITH_DEBUG=0 \
-DWITH_SSL=system
# make
# make install
Salin selepas log masuk

--5.拷贝模版,作为配置文件

# cp support-files/my-default.cnf /etc/my.cnf
Salin selepas log masuk

--6.设置mysql权限

# chown -R mysql.mysql /usr/local/mysql/
Salin selepas log masuk

--7.初始化mysql数据库

# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
# chown -R root /usr/local/mysql/
# chown -R mysql /usr/local/mysql/data/
Salin selepas log masuk

--8.设置mysql开机自启动

# cp support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# chkconfig mysqld on
Salin selepas log masuk

--9.测试并运行mysql

#service mysqld start
Salin selepas log masuk

--10.修改mysql管理员密码

#/usr/local/mysql/bin/mysqladmin -u root password '要设置的密码'
Salin selepas log masuk

--11.使用用户登录mysql

# /usr/local/mysql/bin/mysql -u root -p
Salin selepas log masuk

--12.加入环境变量

# echo 'PATH=/usr/local/mysql/bin/:$PATH' >>/etc/profile
# source /etc/profile
Salin selepas log masuk

CentOS 6.5最小化编译安装mysql 5.5.35配置多实例

1、关闭防火墙

1234567 [root@mysql ~]# service iptables stop
iptables: Setting chains to policy ACCEPT: filter   [ OK ]
iptables: Flushing firewall rules:       [ OK ]
iptables: Unloading modules:        [ OK ]
[root@mysql ~]# chkconfig iptables off
[root@mysql ~]# chkconfig iptables --list
iptables  0:off 1:off 2:off 3:off 4:off 5:off 6:off
Salin selepas log masuk

2、关闭selinux

12 [root@mysql ~]# setenforce 0
[root@mysql ~]# vim /etc/sysconfig/selinux
Salin selepas log masuk

修改下面这一行;

SELINUX=disabled
12 [root@mysql ~]# getenforce 
Permissive
Salin selepas log masuk

3、安装mysql依赖包及编译工具;

1234 [root@mysql ~]# yum install libaio-devel -y
[root@mysql ~]# yum install -y ncurses-devel
[root@mysql ~]# yum install -y gcc gcc-c++ 
[root@mysql ~]# yum install -y cmake
Salin selepas log masuk

4、安装前准备;

4.1、安装路径:

1 [root@mysql ~]# mkdir /usr/local/mysql
Salin selepas log masuk

4.2、数据库路径:

1 [root@mysql ~]# mkdir /data/mysql -p
Salin selepas log masuk

4.3、创建用户和用户组

12 [root@mysql ~]# groupadd mysql
[root@mysql ~]# useradd -r -g mysql -s /bin/false mysql
Salin selepas log masuk

4.4、赋予数据存放目录权限

1 [root@mysql ~]# chown mysql:mysql -R /data/mysql
Salin selepas log masuk

5、编译安装mysql 5.5.35

1234567 [root@mysql ~]# yum install -y lrzsz
root@mysql ~]# mkdir /package
[root@mysql ~]# cd /package/
[root@mysql package]# tar xf mysql-5.5.32.tar.gz 
[root@mysql package]# cd mysql-5.5.32
[root@mysql mysql-5.5.32]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
-DMYSQL_UNIX_ADDR=/data/mysql/mysql.sock 
-DDEFAULT_CHARSET=utf8 
-DDEFAULT_COLLATION=utf8_general_ci 
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk 
-DWITH_INNOBASE_STORAGE_ENGINE=1 
-DWITH_READLINE=1 
-DENABLED_LOCAL_INFILE=1 
-DMYSQL_DATADIR=/data/mysql/ 
-DMYSQL_USER=mysql 
-DMYSQL_TCP_PORT=3306
[root@mysql mysql-5.5.32]# make && make install
Salin selepas log masuk

6、创建多实例数据库文件存放位置;

12345678 [root@mysql ~]# mkdir -p /data/{3306,3307}/data
[root@mysql ~]# tree /data
/data
|-- 3306
|  `-- data
`-- 3307
  `-- data
4 directories, 0 files
Salin selepas log masuk

7、修改配置文件(my.cnf)如下行,分别放入3306、3307目录当中;

123456789 [root@mysql 3306]# vim my.cnf 
[client]
port      = 3306
socket     = /data/3306/mysql.sock
[mysqld]
port      = 3306
socket     = /data/3306/mysql.sock
datadir     = /data/3306
server-id    = 3306
Salin selepas log masuk

8、初始化数据库;

注意:初始化数据库时需要指定不同的数据目录

123 [root@mysql mysql-5.5.32]# cd /usr/local/mysql/
[root@mysql mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306
[root@mysql mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3307
Salin selepas log masuk

9、启动多实例,启动脚本可以加入到开机自启动文件中。

12 [root@mysql mysql]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/3306/my.cnf 2>&1 >/dev/null &  
[root@mysql mysql]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/3307/my.cnf 2>&1 >/dev/null &
Salin selepas log masuk

9.1、查看端口;

12345678 [root@mysql mysql]# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address        Foreign Address       State    PID/Program name  
tcp    0   0 0.0.0.0:3307        0.0.0.0:*          LISTEN   11621/mysqld    
tcp    0   0 0.0.0.0:22         0.0.0.0:*          LISTEN   1266/sshd      
tcp    0   0 0.0.0.0:3306        0.0.0.0:*          LISTEN   11338/mysqld    
tcp    0   0 :::22            :::*            LISTEN   1266/sshd      
udp    0   0 0.0.0.0:68         0.0.0.0:*                969/dhclient
Salin selepas log masuk

10、登录多实例数据库

12 [root@mysql mysql]# /usr/local/mysql/bin/mysql -u root -p -P 3306 -S /data/3306/mysql.sock
[root@mysql mysql]# /usr/local/mysql/bin/mysql -u root -p -P 3307 -S /data/3307/mysql.sock
Salin selepas log masuk

11、关闭mysql多实例方式

12 [root@mysql mysql]# /usr/local/mysql/bin/mysqladmin -u root -p -P 3306 -S /data/3306/mysql.sock shutdown  
[root@mysql mysql]# /usr/local/mysql/bin/mysqladmin -u root -p -P 3307 -S /data/3307/mysql.sock shutdown
cat /etc/my.cnf 
[mysqld1]
datadir=/data/mysql
socket=/tmp/mysql.sock
user=mysql
symbolic-links=0
skip-name-resolve
server-id=1221
max_connections = 2000
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
innodb_buffer_pool_size = 2G
innodb_additional_mem_pool=16M
innodb_log_file_size=256M
innodb_flush_log_at_trx_commit=2
character_set_server=utf8
collation_server = utf8_general_ci
replicate_ignore_db = mysql
slave-skip-errors=all
relay_log=/data/mysql/
[mysqld2]
port=3307
server-id=1222
log-error=/tmp/mysqld2.log
datadir=/data/mysql_live
socket=/tmp/mysql2.sock
user=mysql
symbolic-links=0
skip-name-resolve
character_set_server=utf8
collation_server = utf8_general_ci
max-connections=500
default-storage-engine=INNODB
innodb_file_per_table
log-bin=mysql-bin
relay-log-info-repository=TABLE
master-info-repository=TABLE
expire_logs_days=10
binlog_format=ROW
transaction-isolation=READ-COMMITTED
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
slow_query_log=TRUE
slow_query_log_file=/tmp/mysqld_slow_query2.log
long_query_time=3
replicate_ignore_db = mysql
slave-skip-errors=all
[mysqld3]
server-id=1223
port=3308
log-error=/tmp/mysqld3.log
datadir=/data/mysql
socket=/tmp/mysql3.sock
user=mysql
symbolic-links=0
skip-name-resolve
character_set_server=utf8
collation_server = utf8_general_ci
max-connections=500
default-storage-engine=INNODB
innodb_file_per_table
log-bin=mysql-bin
relay-log-info-repository=TABLE
master-info-repository=TABLE
expire_logs_days=10
binlog_format=ROW
transaction-isolation=READ-COMMITTED
binlog-ignore-db=mysql
binlog-ignore-db=test
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
slow_query_log=TRUE
slow_query_log_file=/tmp/mysqld_slow_query3.log
long_query_time=3
replicate_ignore_db = mysql
slave-skip-errors=all
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/data/mysql/mysqld.pid
Salin selepas log masuk

Atas ialah kandungan terperinci 详细介绍centos编译安装mysql5.6及安装多个mysql的示例代码分享. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan