Mysql------安装

前期准备:

操作系统:Centos 7.4

1:环境准备:关闭SElinux安全策略,关闭防火墙,确认当前主机未安装Mysql或MariaDB

  [root@centos7 ~]# setenforce 0    临时关闭
  [root@centos7 ~]# vim /etc/selinux/config    改配置文件关闭

   SELINUX=disabled
  [root@centos7 ~]# systemctl stop firewalld  临时关闭
  [root@centos7 ~]# systemctl disabled firewalld

2:Mariadb安装方式:

(1)源代码:编译安装

(2)二进制格式的程序包:展开至特定路径,并经过简单配置后即可使用

(3)程序包管理器管理的程序包

  CentOS安装光盘

  项目官方: https://downloads.mariadb.org/mariadb/repositories/ 二进制安装包下载

3:MariaDB 10.2.16官方下载页面:https://downloads.mariadb.org/mariadb/10.2.16/

  mariadb-10.2.16.tar 源代码安装包

   mariadb-10.2.16-linux-x86_64.tar 二进制格式安装包

实验一:使用yum源安装MariaDB 10.2.16

1:打开官网:https://downloads.mariadb.org/mariadb/repositories/,复制yum源,下载界面:https: //downloads.mariadb.org/mariadb/10.2.16/,选择相对于的系统版本


2:将数据库配置复制入库文件,并进行安装

[base]
name=base
baseurl=file:///media/
gpgcheck=0

[epel]
name=epel
baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/x86_64/
gpgcheck=0

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
[mariadb]    清华yum源
name=MariaDB
baseurl=http://mirrors.tuna.tsinghua.edu.cn/mariadb/yum/10.2/centos7-amd64
gpgcheck=0

 [root@centos7 /etc/yum.repos.d]# yum clean all

 [root@centos7 /etc/yum.repos.d]# yum repolist

[root@centos7 /etc/yum.repos.d]# yum install MariaDB-server  进行安装

[root@centos7 /etc/yum.repos.d]# systemctl start mysql  启动该服务

3:提高安全性,添加安全加固

 mysql_secure_installation  运行次脚本,交互式

 是否设置root口令 y
 是否删除匿名用户 y
 是否允许root远程登录 n
 是否删除test数据库 y
 privilege tables(加载特权表) y

4:[root@centos7 ~]# mysql -uroot p跟密码    用户名,密码进行登录,管理数据库

 实验二:二进制格式安装MariaDB 10.2.16

1:官网下载网址:

 mariadb-10.2.15-linux-86_64.tar.gz

2:创建逻辑卷规划数据库

[root@centos7 ~]# fdisk /dev/sda

[root@centos7 ~]# pvcreate /dev/sda3  逻辑分区

[root@centos7 ~]# vgcreate vg0 /dev/sda3  创建卷组 卷组名vg0

[root@centos7 ~]# lvcreate -n mysql -l +100%FREE vg0  创建逻辑卷专存放数据库,把全有的空间全用光

[root@centos7
~]# mkfs.xfs /dev/vg0/mysql 创建文件系统 [root@centos7 ~]# blkid [root@centos7 ~]# mkdir /data [root@centos7 ~]# mount /dev/vg0/mysql /data 挂载 root@centos7 ~]# vim /etc/fstab 写入/etc/fstab 文件中,永久挂载 UUID=efb65b09-40c0-477e-b88f-c5c7d4b837e7 /data xfs defaults 0 0

 3:创建组和用户

[root@centos7 /]# getent passwd mysql  确保当前主机没有mysql用户
[root@centos7 /]# groupadd -r -g 7 mysql
[root@centos7 /]# useradd -r -u 17 -g 17 -m mysql -d /data/mysql -s /sbin/nologin
[root@centos7 /]# ll /data/mysql/ -d
[root@centos7 /]# getent passwd mysql
mysql:x:17:17::/data/mysql:/sbin/nologin   存放数据的位置

 3:解压缩包并修改权限

[root@centos7 ~]# tar xvf mariadb-10.2.16-linux-x86_64.tar.gz -C /usr/local
[root@centos7 ~]# cd /usr/local/
[root@centos7 /usr/local]# ln -s mariadb-10.2.16-linux-x86_64/ mysql 创建一个软连接,让其指向mysql
[root@centos7 /usr/local/mysql]# chown -R root.mysql /usr/local/mysql/  修改用户和组

​4、设置环境变量,为了方便用,把二进制程序的路径放到PATH变量中

[root@centos7 /usr/local/mysql]# vim /etc/profile.d/mysql.sh
  PATH=/uar/local/mysql/bin:$PATH  
[root@centos7 /usr/local/mysql]# . /etc/profile.d/mysql.sh   #生效
[root@centos7 /usr/local/mysql]# echo $PATH
  /usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

 5、创建数据库

[root@centos7 /usr/local/mysql/scripts]# ls
  mysql_install_db 初始化脚本
[root@centos7 /usr/local]# cd /usr/local/mysql/ #必须要进入此目录来执行初始化脚本 [root@centos7 /usr/local/mysql]# scripts/mysql_install_db --datadir=/data/mysql/ --
user=mysql
[root@centos7 /usr/local/mysql]# ls /data/mysql/ -l #查看创建的数据库的内容

 6、提供配置文件:

[root@centos7 /usr/local/mysql]# cp support-files/my-huge.cnf /etc/my.cnf
  cp: overwrite ‘/etc/my.cnf’? y 替换之前的配置文件
修改配置文件vim /etc/my.cnf
[mysqld]
datadir    = /data/mysqldb    ##添加此行,指定数据库存放路径

 7、提供启动服务脚本

[root@centos7 /usr/local/mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@centos7 /usr/local/mysql]# chkconfig --add mysqld

8、启动并测试

[root@centos7 ~]# service mysqld start
[root@centos7
/usr/local/mysql]# ss -nutl [root@centos7 /usr/local/mysql]# mysqld

9:提高安全性,添加安全加固

 mysql_secure_installation  运行次脚本,交互式

 是否设置root口令 y
 是否删除匿名用户 y
 是否允许root远程登录 n
 是否删除test数据库 y
 privilege tables(加载特权表) y      通过mysql.这个数据库中查user用户

实验三:源码编译mysql

1:官网下载源码包

mariadb-10.2.16.tar.gz 

2:准备基础环境,安装包

[root@centos7 /etc/yum.repos.d]# yum -y install bison bison-devel zlib-devel libcurl-devel
libarchive-devel boost-devel gcc gcc-c++ cmake libevent-devel gnutls-devel libaio-devel
openssl-devel ncurses-devel libxml2-devel

 3:做准备用户和数据目录

[root@centos7 ~]# useradd -r -d /data/mysql/ -s /sbin/nologin mysql
[root@centos7 ~]# chown mysql.mysql /data/mysql
[root@centos7
~]# ll -d /data/mysql/ drwxr-xr-x. 2 mysql mysql 6 Jul 25 04:59 /data/mysql/

 4:cmake 编译安装: 之后的步骤根二进制安装的步骤相同


[root@centos7 ~]# tar vxf mariadb-10.2.16.tar.gz [root@centos7 ~]# cd mariadb-10.2.16/ [root@centos7 mariadb-10.2.15]# cmake . \ #编译 -DCMAKE_INSTALL_PREFIX=/app/mysql \ #变量 -DMYSQL_DATADIR=/data/mysqldb/ \ -DSYSCONFDIR=/etc \ -DMYSQL_USER=mysql \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITHOUT_MROONGA_STORAGE_ENGINE=1 \ -DWITH_DEBUG=0 \ -DWITH_READLINE=1 \ -DWITH_SSL=system \ -DWITH_ZLIB=system \ -DWITH_LIBWRAP=0 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_UNIX_ADDR=/app/mysql/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci [root@centos7 mariadb-10.2.15]#make -j4 && make install  提示:如果出错,执行rm -f CMakeCache.txt

 5、配置环境变量、修改软件安装目录权限

[root@centos7 /usr/local/mysql]# vim /etc/profile.d/mysql.sh
  PATH=/uar/local/mysql/bin:$PATH  
[root@centos7 /usr/local/mysql]# . /etc/profile.d/mysql.sh   #生效
[root@centos7 /usr/local/mysql]# echo $PATH
  /usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@centos7 ~]# setfacl -R -m u:mysql:rwx /usr/local/mysql/
 

 6:初始化数据库,提供配置文件,启动服务脚本

[root@centos7 /usr/local/mysql/scripts]# ls
  mysql_install_db 初始化脚本
[root@centos7 /usr/local]# cd /usr/local/mysql/  #必须要进入此目录来执行初始化脚本
[root@centos7 /usr/local/mysql]# scripts/mysql_install_db --datadir=/data/mysql/ --
user=mysql
[root@centos7 /usr/local/mysql]# ls /data/mysql/ -l   #查看创建的数据库的内容

[root@centos7 /usr/local/mysql]# cp support-files/my-huge.cnf /etc/my.cnf
  cp: overwrite ‘/etc/my.cnf’? y 替换之前的配置文件
修改配置文件vim /etc/my.cnf
[mysqld]
datadir    = /data/mysqldb    ##添加此行,指定数据库存放路径

[root@centos7 /usr/local/mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@centos7 /usr/local/mysql]# chkconfig --add mysqld
 

 7:启动测试

[root@centos7 ~]# service mysqld start
[root@centos7 /usr/local/mysql]# ss -nutl
[root@centos7 /usr/local/mysql]# mysqld
 
 
 







猜你喜欢

转载自www.cnblogs.com/wang-jin/p/9367311.html