安装环境:CentOS 6.8
目的:通过通用二进制(Generic Binary)的方式安装MysqL5.6.16
所需软件:mysql-5.6.16-linux-glibc2.5-x86_64.tar(请自行从MysqL官网下载)
步骤:
1.创建MysqL用户,MysqL组
groupadd -g 3306 MysqL
useradd -g MysqL -u 3306 -s /sbin/nologin -M MysqL
id MysqL #查看是否创建成功
2.通过逻辑卷的方式创建MysqL数据目录。
[root@localhost]fdisk /dev/sda
n #新建一个分区
回车 #新建的分区采用默认的磁道初始号
+2G #新建一个2G的分区
t #修改分区的类型
9 #在我的系统上新建的是分区为第九个,所以按9
8e #修改为LVM类型
w #保存退出
[root@localhost]partprobe #通知内核读取分区表
reboot #重启Linux系统
pvcreate /dev/sda9
vgcreate myvg /dev/sda9
lvcreate -L 1G -n mydata myvg #创建逻辑卷
mke2fs -j /dev/myvg/mydata #将逻辑卷格式化为ext3文件系统
mkdir /mydata #创建挂载目录
修改/etc/fstab 设置开机自动挂载/dev/myvg/mydata
vim /etc/fstab
添加最后一行 /dev/myvg/mydata /mydata ext3 defaults 0 0
mount -a #挂载逻辑卷
df #检查逻辑卷是否被挂在了
chown -R MysqL.MysqL /mydata/data/
chmod -R 750 /mydata/data #这两步非常关键,直接关系到初始化数据库的时候是否有权限在/mydata/data/目录下读写数据
3.将MysqL的通用二进制包解压到/usr/local目录下
cd /usr/local
tar xf mysql-5.6.16-linux-glibc2.5-x86_64.tar
#解压后产生了两个压缩包,其中那个MysqL-test-5.6.16-linux-glibc2.5-x86_64.tar.gz包没有用删掉
tar xf mysql-5.6.16-linux-glibc2.5-x86_64.tar.gz
ln -sv mysql-5.6.16-linux-glibc2.5-x86_64 MysqL #创建一个软链接
cd MysqL # 发现有这几个目录bin copYING lib README share support-files
修改权限 chown -R MysqL.MysqL . #这一步很重要,一定不要忘了修改权限
其中最重要的目录为support-files 以及bin目录
support-files里面放的是MysqL的样例配置文件以及服务启动脚本
bin里面存放的是MysqL的重要命令(用于初始化数据库,备份,复制等)
下面初始化数据库 5.7版本之前用的是/bin/MysqL_install_db命令,5.7版本后该命令被废弃,改用/bin/MysqLd来初始化数据库
bin/MysqLd --initialize-insecure --user=MysqL --datadir=/mydata/data #初始化数据库并且指定数据目录 --initialize-insecure 用来初始化数据库,并且没有生成密码,如果使用--initialize会为数据库生成一个随机初始密码,在生产环境下请务必为MysqL生成一个密码
cp /support_files/MysqL.server /etc/init.d/MysqLd #提供服务脚本
4.提供MysqL的配置文件
这是我的配置文件,里面仅仅做了最简单的配置,后续可以根据具体的需要配置相应的参数
less /etc/my.cnf
[client]
port=3306
socket=/tmp/MysqL.sock
[MysqLd]
datadir = /mydata/data/
port=3306
socket=/tmp/MysqL.sock
key_buffer_size=16M
max_allowed_packet=8M
5.下面来启动数据库
service MysqLd start #出现OK说明启动成功
netstat -tulnp #3306端口确实处于监听状态。
MysqL -uroot -p #因为没有密码,所以直接回车就可以连接MysqL 出现如下界面,说明成功了
Welcome to the MysqL monitor. Commands end with ; or \g.
Your MysqL connection id is 2
Server version: 5.6.16 MysqL Community Server (GPL)
copyright (c) 2000,2013,Oracle and/or its affiliates. All rights reserved.
Oracle is a registered Trademark of Oracle Corporation and/or its
affiliates. Other names may be Trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MysqL> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| MysqL |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
MysqL> create database mydb
-> ;
Query OK,1 row affected (0.00 sec)
MysqL> use mydb;Database changedMysqL> create table mytb(id int auto_increment primary key);Query OK,0 rows affected (0.02 sec)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。