开发者社区> lxyangj> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Centos系统安装MySQL数据库

简介: MySQL
+关注继续查看

前言

可能有些人不太了解为什么要安装MySQL,或者是为什么要有数据库。这个问题在我学习编程的时候,有同学问过我,还有一些不懂编程的人问自己数据库是什么的时候,我的回答是在网页上浏览数据的时候,如果要数据是动态实时变化的,这个时候就需要展示不断修改的数据,不断修改的数据如何被记录,那这个时候就需要数据库,顾名思义,数据库就是用来保存数据,网页通过程序将保存的数据进行展示,所以需要安装数据库来存储数据。数据库的产品有很多比如DB2、Oracle、MySQL、PostgreSQL等。

文章主要是介绍如何在Centos7操作系统中安装MySQL。MySQL是一款免费开源的数据库(当然这是在它的所有权落入Oracle之前,MySQL先是卖给了SUM公司,后来SUN被甲骨文收购,MySQL就属于Oracle公司的产品了)。现在MySQL有两个不同的产品(或者说两个不同的分支吧)。一个是收费版MySQL,一个是免费版MariaDB。MariaDB主要是由社区进行维护。虽然是两个不同的分支,但是在使用上没有什么区别,不管是SQL语法还是环境运维,几乎都是一样的,所以MySQL和MariaDB不会产生多余的学习成本。以下是关于MySQL和MariaDB的一些区别,就当了解一下即可:

  • MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发。
  • MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人会从MySQL5.5中了解到MariaDB的所有功能。从2012年11月12日起发布的10.0.0版开始,不再依照MySQL的版号。10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能
  • 在存储引擎方面,10.0.9版起使用XtraDB(名称代号为Aria)来代替MySQL的InnoDB
  • MariaDB的API和协议兼容MySQL,另外又添加了一些功能,以支持本地的非阻塞操作和进度报告
  • 这意味着,所有使用MySQL的连接器、程序库和应用程序也将可以在MariaDB下工作

环境说明

Centos7、JDK1.8、MySQL5.7.29

下载地址

https://dev.mysql.com/downloads/mysql/5.7.html#downloads

image

选择对应的环境下载即可。下载完成后我们可以通过xftp等工具将下载好的安装包上传到Centos7系统中,然后进行安装。

开始安装

删除历史版本

rpm -qa|grep mysql
rpm -e –nodeps filename
find / -name mysql
rm -rf filename

解压安装包

# 首先通过cd命令进入到安装包所在的目录,然后执行
cd /opt
tar –zxvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

创建安装目录

mkdir /usr/local/mysql

移动文件

移动解压后的文件夹到指定目录

mv mysql-5.7.29-linux-glibc2.12-x86_64 /usr/local/mysql

创建数据文件夹

在移动后的目录下新建存储数据的文件夹data,MySQL的表结构、表数据及索引等信息都存储在该目录下

cd /usr/local/mysql
mkdir data

添加账户

给当前linux系统添加账户,以后可用于管理mysql数据库

userdel mysql
groupdel mysql
groupadd mysql
useradd -g mysql mysql

查看MySQL初始密码

进入mysql的目录开始安装,查看安装信息记住初密码:找有temporary password这一行

cd /usr/local/mysql
./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize

image

移动启动文件

将安装后的路径/usr/local/mysql/support-files/中的mysql.server复制到/etc/init.d/mysqld

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

MySQL配置文件

如果/usr/local/mysql/support-files有my-default.cnf则将其拷贝到/etc/my.cnf

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

如果没有则在/etc下新建my.cnf文件

touch my.cnf

编辑my.cnf配置文件

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
skip-name-resolve
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M

修改文件权限

chown 777 /etc/my.cnf
chmod +x /etc/init.d/mysqld

配置环境变量

设置环境变量,以便能在任意地方运行mysql命令登录数据库

vim /etc/profile
在文件的最后,加上下面两行:  
#mysql environment
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin

刷新环境变量

source /etc/profile

添加软链接

ln -fs /usr/local/mysql/bin/mysql /usr/bin/mysql

添加软链接和配置环境变量都是为了便于执行脚本,这样执行MySQL命令的时候不用到MySQL的安装目录,在路径执行都可以。添加软链接和配置环境变量任选一个操作即可,同时都进行配置也没问题

设置防火墙

防火墙开放mysql数据库端口3306

# 光标一定到22端口行yy复制,p粘贴,i进入编辑模式将粘贴的端口由22修改为3306 
vim /etc/sysconfig/iptables

重启防火前

service iptables restart

查看防火墙状态,检查是否已开放3306端口

service iptables status

image

启动MySQL

/etc/init.d/mysqld start
或者:
./support-files/mysql.server start
或者:
service mysqld start

登录MySQL

mysql -u root -p
然后输入第8步的初始密码

看见一些数据库的相关信息,查询数据版本也可以通过登录这种方式哟,O(∩_∩)O哈哈~

image

修改root的密码

set password = password('123456');
也可以指定用户:建议用上面的就行
set password for 'root'@'localhost'=password('123456');

刷新配置

flush privileges;

添加远程访问

添加远程访问本服务器的MySQL数据库权限问权限

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

刷新配置

flush privileges;

重启MySQL

/etc/init.d/mysqld restart
或者:
./support-files/mysql.server restart
或者:
service mysqld restart

设置开机启动

检查自启动项列表中没有mysqld这个

chkconfig --list mysqld

image

如果没有设置过,就添加

chkconfig --add mysqld

命令连接MySQL

在Centos中通过命令连接数据库后,需要执行sql文件

连接MySQL

mysql -u root -p

创建数据库

create database nacos_config;

进入数据库

use nacos_config

执行SQL文件

source /usr/local/nacos/conf/nacos-mysql.sql; # 文件的绝对路径

以上就是在Centos7上安装MySQL的全过程,其中需要注意的是,MySQL安装成功后一定要对防火墙进行设置(网络可以访问),并且开启访问权限(有资源操作权限),否则无法进行使用。在MySQL服务器本地执行sql文件的时候,先登录MySQL,再通过磁盘的绝对路径执行sql文件。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
CentOS 安装 MySQL
CentOS 安装 MySQL
47 0
centos安装mysql8
centos安装mysql8
37 0
Centos7安装mysql8.0教程
网上太多教程,大多都是部分可以用,很多都没发操作,安装到一半不知道怎么处理。这篇文章也仅是在我这里操作成功,安装过程,以下命令从头操作到底就完成安装以及远程访问,测试两次都没问题,在此记录学习。
57 0
Centos安装Mysql
如何在阿里云服务器上安装Mysql
49 0
CentOs安装MySQL
CentOs安装MySQL
38 0
centos安装mysql
centos安装mysql
100 0
Centos7 安装 Mysql数据库
centos7下安装Mysql数据库
3637 0
CentOS下安装MySQL数据库
其实,安装 MySQL 数据库还是比较容易的,安装方式可以分为源码安装和二进制包安装。安装简单,只需要 yum安装几个包就可以搞定,安装后续其实还需要简单做些工作,才可以使用。 1、环境 CentOS 6.5 2、方式 yum 3、命令 yum install mysql-server mysql-devel mysql-libs -y 一般安装不会遇到什么错误,基本上是一遍通过。
1709 0
CentOS 安装配置 Mysql 数据库。
centos 安装 Mysql 数据库。   安装mysql 命令和mysql服务器。yum install mysql mysql-server     然后设置 mysql 编码     vi /etc/my.cnf 在[mysqld]下添加 default-character-set = utf8   在末尾添加 [mysql] default-chara
1393 0
+关注
12
文章
1
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载