一、mysql简介
说到数据库,我们大多想到的是关系型数据库,比如mysql、oracle、sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱不得不首先推荐的是mysql数据库了,而且Mysql数据库的第一个版本就是发行在Linux系统上的。
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
在Linux上安装mysql数据库,我们可以去其官网上下载mysql数据库的rpm包,大家可以根据自己的操作系统去下载对应的数据库文件,目前最新的版本是5.6.37了。
在这里我是通过yum来进行mysql数据库的安装的,通过这种方式进行安装,可以将跟mysql相关的一些服务、包都给我们安装好,所以省去了很多不必要的麻烦!!
二、安装MySQL
废话不多说,开始安装。
安装方式:
1 、源代码:编译安装2 、二进制格式的程序包:展开至特定路径,并经过简单配置后即可使用
3 、程序包管理器管理的程序包
CentOS 安装光盘
项目官方:(https://downloads.mariadb.org/mariadb/repositories/)4 、安装和使用MariaDB
CentOS 7 直接提供
CentOS 6安装
CentOS-6
yum -y install mysql mysql-devel
yum -y install mysql-server
//注意:安装mysql时我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,
//我们还需要安装mysql-server服务端才行
//我们安装的mysql-server并不是最新版本,如果你想尝试最新版本,那就去mysql官网下载rpm包安装就行了,至此我们的mysql数据库已经安装完成了。CentOS-7
yum -y install mariadb
yum -y install mysql-server
//centos-7上默认的是使用 mariadb 直接安装即可或者去官网直接安装最新的此时我们可以通过如下命令,查看刚安装好的mysql-server的版本
rpm -qi mysql-server 或者 yum info mysql-server
三、简单介绍数据库内容
MariaDB的特性
单进程,多线程
插件式存储引擎:存储管理器有多种实现版本,功能和特
性可能均略有差别;用户可根据需要灵活选择
存储引擎也称之为“表类型”(1) 更多的存储的存储引擎
MyISAM ==> Aria
InnoDB ==> XtraDB
Mysql5.5.8 开始innoDB 引擎是MYSQL 默认引擎,(2) 诸多扩展和新特性
(3) 提供了较多测试组件
(4) 开源
Centos7 的MariaDB 数据库包括两个包组:Mariadb mariadb-client
mariadb 组包括下面包:
mariadb-server :mandatory package
mariadb-bench :optional package
mariadb-test :optional package
mariadb-client 组包括下面包:
Mariadb :mandatory package
MySQL-python :default package
mysql-connector-odbc :default package
libdbi-dbd-mysql :optional package
mysql-connector-java :optional packageperl-DBD-MySQL :optional package
配置文件:
/etc/my.cnf 和/etc/my.cnf.d/ *.cnf
MariaDB的安装
安装
yum groupinstall mariadb mariadb-client
systemctl start mariadb
systemctl enable mariadb提高安全性
mysql_secure_installation设置数据库管理员root 口令
禁止root 远程登录
删除anonymous 用户帐号
删除test 数据库
MairaDB配置
侦听3306/tcp 端口可以在绑定有一个或全部接口IP上
vim /etc/my.cnf
在[mysqld] 加一行:
skip-networking=1
// 只侦听本地客户端, 所有和服务器的交互都通过一个socket
//可在/etc/my.cnf 修改
firewall-cmd –permanent –add-service=mysql
firewall-cmd –reload
MariaDB程序
MariaDB 的程序组成:
Client:
mysql :CLI 交互式客户端程序
mysqldump, mysqladmin…Server:
mysqld_safe
mysqld
mysqld_multi :多实例服务器监听的两种socket 地址:
ip socket: 监听在tcp 的3306 端口,支持远程通信
unix sock: 监听在sock 文件上(/tmp/mysql.sock,
/var/lib/mysql/mysql.sock) ,仅支持本机通信
server: localhost, 127.0.0.1 自动使用unix sock客户端工具
命令行交互式客户端程序:mysql
mysql 选项:
-uUSERNAME: 用户名;默认为root
-hHOST: 服务器主机; 默认为localhost
-pPASSWORD :用户的密码; 建议使用-p, 默认为空密码mysql 用户账号由两部分组成:
‘USERNAME’@’HOST’
HOST 用于限制此用户可通过哪些 远程 主机连接mysql 服务
支持使用通配符:
% 匹配任意长度的任意字符
172.16.0.0/16 或 或 172.16.%.%
_ 匹配任意单个字符执行命令
运行mysql 命令:默认空密码登录
mysql>use mysql
//查看当前用户mysql>SELECT User,Host,Password FROM user;
安全初始化
/usr/local/mysql/bin/mysql_secure_installatoin
登录系统:mysql –uroot –p
客户端命令:本地执行
mysql> help每个命令都完整形式和简写格式
mysql> status 或 或 \s服务端命令:通过mysql 协议发往服务器执行并取回结果
每个命令都必须命令结束符号;默认为分号
SELECT VERSION();
MYSQL日志文件
cd /var/log
ls
// mysql.log 数据库的日志输出存放位置
//其中mysqld.log 这个文件就是我们存放我们跟mysql数据库进行操作而产生的一些日志信息,通过查看该日志文件,我们可以从中获得很多信息
四、MariaDB实战
MYSQL:命令集合
命令行输入:mysql
//进入数据库,下面命令都是在数据库中进行的;SHOW DATABASES;
//(不分大小写)显示所有数据库,有权限的限制,此命令;slecet user();
//显示数据库用户;
//数据库用户组成;
//username@hostname|ip
//wang@172.18.13.123 #在172.18.13.123这个ip上以wang的身份用MYSQL链接数据库。mysql -uXXXX;
//直接创建账户XXXX并连接数据库,
//之所以出现这种情况是因为,数据库支持匿名登陆!!!重要:执行命令
[root@CentOS6 ~]#which mysql_secure_installation
/usr/bin/mysql_secure_installation
//Y→Y→N→N→Yuse mysql;
//执行这句,才能执行下一句,相当于打开表;show tables;
//列出这个数据库有哪些表;select * from user;
//查看user表中所有的数据;desc user;
//查看user表中所有字段;select user,host,password from user;
//查看user表中user,host,password字段;select user,host,password from mysql.user;
//查看mysql.user表中user,host,password字段;
提高安全性
mysql_secure_installation
//设置数据库管理员root 口令
// 禁止root 远程登录
//删除anonymous 用户帐号
//删除test
//设置顺序依次为 Y→Y→N→N→Ymysql -u root -p
//运行脚本后安全登陆
//-u 是以什么身份 -p是密码use mysql
//使用表select user,password,host from user;
//显示几个user,password,host字段
本篇随笔详细记录了在CentOS下通过yum安装mysql数据库以及对数据库进行基本配置,在后续的Linux学习中将会坚持记录自己的心得以及体会!!!!