MySQL系列之三 基础篇

目录
  • 一、mysql简介
  • 二、mysql的发展历史
  • 三、mariadb的基本使用

一、mysql简介

​ mysql原本是一个开放源代码的关系数据库管理系统,原开发者为瑞典的mysql ab公司,该公司于2008年被sun公司收购。2009年,oracle收购sun公司,mysql成为oracle旗下产品。

​ 但被甲骨文公司收购后,oracle大幅调涨mysql商业版的售价,且甲骨文公司不再支持另一个自由软件项目opensolaris的发展,因此导致自由软件社区们对于oracle是否还会持续支持mysql社区版(mysql之中唯一的免费版本)有所隐忧,mysql的创始人麦克尔·维德纽斯以mysql为基础,成立分支计划mariadb。而原先一些使用mysql的开源软件逐渐转向mariadb或其它的数据库。

二、mysql的发展历史

作者:monty 麦克尔·维德纽斯

  • 1996年:发布mysql1.0,开始是solaris版本,后来又发布了linux版本
  • 1999年:monty 在瑞典成立了 mysql ab 公司
  • 2003年:mysql 5.0版本发布,增加了视图、存储过程等功能
  • 2008年:被 sun公司 收购
  • 2009年:oracle 收购 sun
  • 2009年:monty 成立 mariadb

版本的演变:

  • ​ mysql:5.1 –> 5.5 –> 5.6 –> 5.7
  • ​ mariadb:5.5 –>10.0–> 10.1 –> 10.2 –> 10.3

三、mariadb的基本使用

mariadb的目的是完全兼容mysql,包括api和命令行,使之能轻松成为mysql的代替品。在存储引擎方面,10.0.9版起使用xtradb(名称代号为aria)来代替mysql的innodb。

​ 由mysql的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司mysql ab卖给了sun,此后,随着sun被甲骨文收购,mysql的所有权也落入oracle的手中。mariadb名称来自麦克尔·维德纽斯的女儿玛丽亚(英语:maria)的名字。

​ 插件式存储引擎:也称为“表类型”,存储管理器有多种实现版本,功能和特性可能均略有差别;用户可根据需要灵活选择,mysql5.5.5开始innodb引擎是mysql默认引擎。myisam ==> aria ,innodb ==> xtradb

1、基本安装与配置

安装:yum install mariadb-server

主配置文件:从上到下检查,如果有重复的配置参数则在后边的配置文件中的参数生效,覆盖检索

/etc/my.cnf
/etc/mysql/my.cnf
/etc/sysconfig/my.cnf
/usr/local/etc/my.cnf
~/.my.cnf

​ 查看默认配置:/usr/libexec/mysqld –print-defaults

默认数据库库文件存放目录:/var/lib/mysql/

套接字文件:/var/lib/mysql/mysql.sock

pid文件:/var/run/mariadb/mariadb.pid

日志文件:/var/log/mariadb/mariadb.log

启动服务:# systemctl start mariadb.service

2、客户端命令:mysql

选项:

​ -u root 指定用户
-p password 指定密码
-h host 指定连接主机
-a 禁止补全
-p port 指定端口,默认3306
​ -s socket文件路径 默认:/var/lib/mysql/mysql.sock
​ -d databasename 指定默认数据库
​ -c 启用压缩
​ -e sql_cmd 执行后退出
-v 查看版本
​ –print-defaults 查看默认设置

批处理模式

mysql < /path/somefile.sql 将sql脚本导入数据库执行

交互式模式

客户端命令

  • \d|delimiter 设置语句结束符
  • \c|clear 提前结束语句
  • \r|connect 重新连接数据库
  • \g 直接将语句送服务器执行
  • \g 直接将语句送服务器执行;结果纵向显示
  • .|source 读入脚本文件创建数据库
  • ! command 执行shell命令
  • \w 语句执行结束后显示警告信息
  • \w 语句执行结束后不显示警告信息
  • \s 获取当前系统状态
  • use database_name 指定操作的数据库
  • prompt \u@[\d] \r:\m:\s-> 修改提示符,如果需要永久修改则在my.cnf中 [mysql] 下加入 prompt=”(\u@\h) [\d]>
  • \q 退出

服务器命令:需要在命令后加命令结束符,默认结束符为分号”;”

  • help keyword 获取服务器命令的帮助
  • select version(); 查看数据库版本
  • show variables; 显示数据库当前工作的环境变量

3、其他客户端工具

  • mysqldump:备份工具,基于mysql协议向mysqld发起查询请求,并将查得的所有数据转换成insert等写操作语句保存文本文件中
  • mysqladmin:基于mysql协议管理mysqld
  • mysqlimport:数据导入工具
  • myisamchk:检查myisam库
  • myisampack:打包myisam表
  • mysqld_safe:服务二进制程序
  • mysqld_multi:创建多实例工具

4、安全加强脚本 mysql_secure_installation

这个脚本可以帮助我们做一下基本的安全加强

[root@centos7 mysql]# mysql_secure_installation
enter current password for root (enter for none):   #空密码直接回车
set root password? [y/n] y  #设置root密码
new password: ******
re-enter new password: ******
remove anonymous users? [y/n] y  #删除匿名账户
disallow root login remotely? [y/n] n  #禁用远程连接
remove test database and access to it? [y/n] y  #删除test库
reload privilege tables now? [y/n] y  #重读授权表使其配置生效
[root@centos7 mysql]# mysql -uroot -p'your_password'  #连接数据库命令

到此这篇关于mysql系列之三 基础篇的文章就介绍到这了,更多相关mysql 基础篇内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐