Linux 基础——Mysql安装基础 | 爱读源码基础篇03

“ 书到用时方恨少,事非经过不知难。”
—— 陆游

前言

做开发一定会用到数据库,本来计划写mysql和oracle的安装教程的。考虑到oracle的版权问题,决定还是不用介绍oracle的安装了,关于oracle的教程网络上都有,感兴趣的小伙伴可以自行百度。
数据库会一种就基本可以满足开发了,在中大型的项目中会有专门的数据工程师,入门级别还是推荐mysql,简单,免费。
如果费用充足一些的朋友,其实可以不用安装,不论是腾讯云还是阿里云都提供装好的mysql云数据库的。
PS:刚查看了一下,腾讯提供的mysql5.7版本的数据库大概在400元3年的价格,如果只是学习,还有1年150元左右的,还是挺划算的。

运行环境

  • 服务器:使用腾讯云提供的云服务器,每月60元。操作系统为CentOS 7.4,64位;CPU 1核;内存 1GB;公网带宽 1Mbqs。这算是腾讯云提供的最廉价的服务了,方便各位使用。使用腾讯提供的云服务器对新手有很大的好处,便于大家排除各种稀奇古怪的问题,专注在技术本身。但是,如果经费实在紧张,可用本地虚拟机。
    PS:我以前也用,现在基本不用了。因为,会给自己带来各种各样的麻烦和问题,把时间和精力都浪费了。
  • 本地环境:Mac 10.13.6
  • 本地软件:
    • Atom 1.9.4|本地编辑工具
    • FileZilla 3.35.1|ftp连接工具
    • SecureCRT 8.0.2|Linux连接工具
    • Mysql 5.7.23|数据库
      具体步骤

Step 1.下载mysql

mysql下载,简单介绍一下,oracle网站上数据库上找到mysql下载进行下载,这里给一个参考网址:
https://dev.mysql.com/downloads/mysql/
网址有可能更改,因为mysql的版本更新,网站上提供了8.0以上的版本,这里还是介绍5.7的版本,这个版本目前来看,比较稳定。
下载界面如下图:

下载完成后,使用FileZilla上传到服务器上,上传的办法在前几篇文章中已做了介绍,不详细说明。并在/usr目录下新建mysql文件。

命令:
1.安装辅助工具
# yum -y install perl perl-devel autoconf libaio
# yum -y install  numactl
ps 原来安装过的可以不用安装
2.新建mysql目录
# mkdir /usr/mysql
3.卸载mariadb
# rpm -qa|grep -i mariadb-libs
# rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
   PS:第一项复制工具我们在前几篇文章里面已经安装过了,第二项numactl没有安装过。mysqld的默认目录安装时在/usr/local/mysql,新手最好安装在这里,因为不然后面需要修改mysql.server。mariadb是CentOS 7.4自带的,安装的mysql5.7以上版本需要卸载,5.6的版本不知道是否需要,各位请自行查证。mariadb-libs-5.5.56-2.el7.x86_64的版本号,各版本的Centos的版本不同

Step 2.安装mysql

命令:
1.解压mysql
# tar zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
2.添加系统mysql组和mysql用户
# groupadd mysql
# useradd -r -s /bin/fals mysql
3.增加data文件,修改mysql软件目录,修改目录拥有者为mysql用户
# mv /usr/mysql/mysql-5.7.23-linux-glibc2.12-x86_64 /usr/mysql/mysql-5.7.23
# mkdir /usr/mysql/mysql-5.7.23/data
          # cd /usr/mysql/
          # chown -R  mysql  ./
4.安装mysql
# cd /usr/mysql/mysql-5.7.23/bin
# ./mysqld --initialize --user=mysql --basedir=/usr/mysql/mysql-5.7.23 --datadir=/usr/mysql/mysql-5.7.23/data

PS:因为用户仅用于所有权目的,而不是登录目的,所以useradd命令使用-r和-s /bin/false选项来创建对服务器主机没有登录权限的用户。-r创建的是系统帐号,一般用来做系统服务的,MySQL建议做为系统服务来运行,所以建议创建系统帐号,同时禁止直接以mysql用户身份登录系统,这都是为安全起见的考虑,当然你也可以允许mysql用户身份登录。
./mysqld --initialize --user=mysql --basedir=/usr/mysql/mysql-5.7.23 --datadir=/usr/mysql/mysql-5.7.23/data报错的话,多半是由于第二项工具没有安装,# yum -y install numactl
安装完成后,系统出现下图,结尾部分为root账号的密码,保存下来,后续需要使用。

Step 3.修改mysql文件权限

将mysql/目录下除了data/目录的所有文件,改回root用户所有,mysql用户只需作为mysql/data/目录下所有文件的所有者。

命令:
1.修改mysql目录权限
# chown -R root /usr/mysql
2.修改mysql/mysql-5.7.23/data目录权限
# chown -R mysql:mysql /usr/mysql/mysql-5.7.23/data
3.设置mariadb的log文件及/var/bin/mysql
# mkdir /var/log/mariadb
# touch /var/log/mariadb/mariadb.log
# chown -R mysql:mysql /var/log/mariadb/
# mkdir /var/lib/mysql
# chown -R mysql:mysql /var/lib/mysql
4.修改mysql.server的配置,按照下图修改,把地址改为各自的地址
# vim /usr/mysql/mysql-5.7.23/support-files/mysql.server

Step 4.mysql启动配置

1.设置启动项
# cd  /usr/mysql/mysql-5.7.23
# cp support-files/mysql.server  /etc/init.d/mysql
# chmod +x /etc/init.d/mysql
# chkconfig --add mysql
# chkconfig --list
2.启动方法一
# cd /usr/mysql/mysql-5.7.23/support-files
# ./mysql.server start
3.启动方法二
#  service mysql start

Step 5.mysql登陆

1. 设置mysql命令关联
#   ln -s  /usr/mysql/mysql-5.7.23/bin/mysql  /usr/bin/mysql
2. 登陆
#   mysql -u root -p
输入密码,密码为Step2中随机生成的

Step 6.mysql管理工具连

mysql的图形化管理工具有很多,比较常见的是navicat、MySQL Workbench以及phpMyAdmin这三种比较常见。Navciat需要收费、MySQL Workbench和phpMyAdmin都是免费的。navicat和phpMyAdmin的使用都比较简单,MySQL Workbench是官方的软件由于没有汉化版,上手难度稍微高一点。笔者自己用的话是使用navicat和MySQL Workbench。简单的日常使用,excel导入数据等都使用navicat,调优使用MySQL Workbench。
mysql的root账号默认是不允许远程访问的。所有要设置新账户或者是调整权限,这里以修改root权限为例。
1.修改权限
# mysql -u root -p
输入密码
2.修改root权限,允许远程访问
mysql> set password=password(‘123456’);
mysql> GRANT ALL PRIVILEGES ON . TO root@"%" IDENTIFIED BY “123456”;
PS:句中"%"表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,123456为root远程登录的密码。
mysql> flush privileges;
mysql> quit
3.打开3306端口访问权限
#firewall-cmd --zone=public --list-ports
PS:查看防火墙端口3306是否开放,如果没有允许下面命令
#firewall-cmd --permanent --zone=public --add-port=3306/tcp
#firewall-cmd --reload
4.使用navicat配置连接
账号root 密码123456
连接成功,以后就可以使用navicat管理mysql了。

后记

本文的全部命令笔者都运行测试过,按照步骤均可实现。特别说明的部分是网上给的大多数的mysql5.6版本的,如果是本文给的5.7版本的,请按照本文进行设置。

整理完成时间2018年8月31日01:49
爱读源码
更多的入门级技术文档
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值