MySQL简介
MySQL是一个小型关系数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被sun公司10亿美金收购。2009年,SUN又被Oracle以74亿美金收购。
目前MySQL被广泛地应用在Internet上的中小型网站中。由于体积小、速度快、总体拥有成本低,尤其是开放源代码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
MySQL的特性
- 使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。
- 支持AIX、BSDi、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、NetBSD、OpenBSD、OS/2 Wrap、Solaris、SunOS、Windows等多种操作系统。
- 为多种编程语言提供了API。这些编程语言包括C、C++、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
- 支持多线程,充分利用CPU资源,支持多用户。
- 优化的SQL查询算法,有效地提高查询速度。
- 既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
- 提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。
- 提供TCP/IP、ODBC和JDBC等多种数据库连接途径。
- 提供用于管理、检查、优化数据库操作的管理工具。
- 可以处理拥有上千万条记录的大型数据库。
MySQL的获取
版本介绍:
Alpha版:开发版,公司内部使用
Beta版:完成开发后,用户体验版
RC版:生产环境发布之前的一个小版本或称候选版
GA版:正式发布版本
MySQL官网地址:http://www.mysql.com/
从官方网站下载安装包
从官方网站下载源代码包
从官方网站下载二进制包
从发行版本光盘中获取安装包
MySQL 常见版本:
MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。
MySQL Enterprise Edition 企业版本,需付费,可以试用 30 天。
MySQL Cluster 集群版,开源免费。可将几个 MySQL Server 封装成一个 Server。
MySQL Cluster CGE 高级集群版,需付费
MySQL的安装和部署(Linux)
Windows上的安装和部署可以说是简单的不能再简单了,在这就不说了。
Linux版本:Redhat9
第一步:创建软件仓库
①手动挂载
mount /dev/sr0 /media
②进入yum配置目录并修改配置
进入yum配置目录
cd /etc/yum.repos.d/
编辑配置文件
vim redhat.repo.repo
修改配置文件
[BaseOS]
name = baseos yum
enabled = 1
baseurl = file:///media/BaseOS
gpgcheck = 0
[AppStream]
name = appstream yum
enabled = 1
baseurl = file:///media/AppStream
gpgcheck = 0
③清空缓存
yum clean all
④创建缓存仓库
yum makecache
⑤查看缓存列表
yum repolist
第二步、MySQL安装
①进入/usr/local目录下,并新建一个目录文件mysql
cd /usr/local
mkdir mysql‘
②wget远程下载
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.33-1.el9.x86_64.rpm-bundle.tar
③解压
tar xvf mysql-8.0.32-1.el9.x86_64.rpm-bundle.tar
④安装所需的文件
dnf localinstall mysql-community-server-8.0.32-1.el9.x86_64.rpm mysql-community-client-8.0.32-1.el9.x86_64.rpm mysql-community-common-8.0.32-1.el9.x86_64.rpm mysql-community-icu-data-files-8.0.32-1.el9.x86_64.rpm mysql-community-client-plugins-8.0.32-1.el9.x86_64.rpm mysql-community-libs-8.0.32-1.el9.x86_64.rpm
第三步、部署
①启动MySQL服务
systemctl restart mysqld
②验证服务是否可行
systemctl status mysqld
③查看日志以获取初始登录密码(并且复制以备登录使用)
grep password /var/log/mysqld.log
④首次登陆并修改密码
mysql -uroot -p
Enter password:(此处输入密码不显示)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Redhat123!';
⑤退出并重新登录即可
mysql -uroot -p
Enter password:(此处输入密码不显示)
⑥进入mysql库并执行修改命令
use mysql
update user set host='%' where user='root';
⑦刷新权限
flush privileges;
⑧退出并关闭防火墙
exit
systemctl stop firewalld.service
systemctl disable firewalld.service
此时已经可以用远程数据库工具连接该数据库了