目录
MySQL数据库安装(centos)
版本选择
企业版
社区版
选哪个
MySQL特点
MySQL服务端-客户端
mysql下载选择
软件包解释
安装MySQL的方式
rpm包安装
yum方式安装
源码编译安装★
具体的编译安装步骤★★
环境准备
free -m命令
cat /proc/cpuinfom命令
top命令
cat /etc/redhat-release命令
编译前的依赖安装
获取mysql的源代码
解压缩,安装mysql
执行cmake,生成makefile,用于编译安装
make安装
验证mysql的安装
创建软链接
mysql数据初始化操作
vim安装
net-tools安装
准备启动mysql
启动前准备
启动成功!
验证启动
登录mysql据库
mysql安全配置
MySQL企业版由MySQL AB公司内部专门的人员负责开发及维护,但同时也会吸纳社区人员编写的优秀代码及算法,并且由他们严格按照软件测试流程对这些采纳的代码进行测试,确定没有问题之后才会进行发布。简单地说,MySQL企业版是由MySQL公司内部发布的,它参考了社区版的先进代码功能和算法,是MySQL公司的赢利产品,需要付费才能使用及提供服务支持,稳定性和可靠性无疑都是最好的,当然了,企业腰包得够鼓才能买得起。某知名分类门户网站2008年就购买过MySQL企业版,价格不比那些闭源的商业数据库便宜,也是大几十万。
MySQL社区版则是由分散在世界各地的MySQL开发者、爱好者以及用户参与开发与测试的,包括软件代码的管理、测试工作,也是他们在负责。社区也会设立BUG汇报机制,收集用户在使用过程中遇到的BUG情况,相比于企业版,社区版的开发及测试环境没有那么严格。
mysql是成熟产品,企业版和社区版在性能方面区别不大,对于我们学习而言,社区版即可。
它们的区别可以如下了解
企业版对代码的管理、测试更严格、稳定性更好。
企业版不遵循GPL开源协议,而社区版遵循,可以免费用.。
企业版可以购买额外的收费服务,如7*24的技术支持,有钱任性。
社区版的安全性,稳定性,无法像企业版有及时的维护、技术支持。
支持多种操作系统,Windows、MacOS、Lnux等支持多种语言API,如C、C++、Pvthon、PHP、Java等
支持多线程、充分利用硬件资源 支持多种存储引擎
mysql就是一个基于socket编写的C/S架构的软件
客户端软件 自带:如mysql命令,mysqldump命令等 python模块:如pymysqlmysql
先看下什么是B/S和C/S架构。
B/S是Browser/Server指浏览器和服务器端,在客户机不需要装软件,只需要装一个浏览器。
C/S是Client/Server指客户端和服务器,在客户机端必须装客户端软件及相应环境后,才能访问服务器。
MySQL是基于客户端-服务端的运行模式数据库,服务端 负责数据处理,运行在数据库服务器上。
用户通过发送增删改查等请求,发送给 客户端软件,然后通过网络提交请求给 服务端 ,服务端接收到请求,再进行处理,然后返回。
服务端、客户端可以在不同的机器上,也可以在一台机器上。
这种服务端,客户端,就在生活里很常见,如打游戏时的登录,QQ、微信的登录,MySQL也是一个登录的过程。
了解数据库后,我们可以下载mysql软件了
MySQL :: Download MySQL Community Server (Archived Versions)
我们等会需要用的是这个安装包:
https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.40.tar.gz
mysql-5.6.45.tar.gz
5 是主版本号
6 是发行级别,主版本号和发行级别组合,构成发行序列号
45 表示在此发行系列的一个版本,随着新版本发布,进行递增
例如
mysq1-5.6.46.tar.gz
mysql-5.6.47.tar.gz
每次更新后,最后一个数字会递增
如果功能变化较大,字符串的第二个数字会递增,也就是如5.7
如果软件格式大改动,第一个数字,主版本号会变化
企业生产场景下,数据库是重中之重,因此选择MySQL数据库一定要慎重。
下面是给出的一些选择建议。
1)一定要选稳定版版本,即择开源的社区版的稳定版。
2)产品线选择,建议选择第二条产品线中的5.5或5.6版本。目前互联网公司
主流版本是5.5和5.6。
3)选择MySQL数据库至少发布半年以上的稳定版本。
4)要尽可能选择前后几个月没有大的BUG修复的版本,而不是大量修复BUG的集中版本。
5)最好选择向后较长时间没有更新发布的版本。
6)要考虑开发人员开发程序使用的版本是否兼容你所选的版本。
7)首先作为内部开发测试数据库环境,测试运行几个月的时间。
8)优先对企业非核心业务采用新的数据库稳定版本软件。
方式有哪些
rpm安装必须要提前准备好官网、第三方源提供好的rpm软件包,且无法满足定制化需求、编译参数、修改路径、依赖冲突问题,所以不建议使用。
这是最方便的,yum自动去源中下载相关rpm包
yum install mariadb-server mariadb -y
systemctl start mariadb
源代码编译三部曲
1.获取mysql代码源码包,解压缩,源码目录下有一个makefile
2.进入mysql的源码目录下,执行make指令,自动读取makefile
3.在make编译完成之后,执行make install,安装mysql到指定位置
Vmware,设置内存大于等于4G,linux的配置,cpu也至少给2核以上
[root@srlua001 opt]# free -m
[root@srlua001 opt]# cat /proc/cpuinfo
processor 0 - 3 说明有4个cpu
[root@srlua001 opt]# top
执行后按1,查看cpu
编译安装过程中,不得出现error关键字
查看操作系统版本
[root@srlua001 opt]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
#安装命令
[root@srlua001 opt]#yum install ncurses-devel libaio-devel gcc make cmake -y
创建mysq1用户,用于授权目录
下载链接:
https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.40.tar.gz
使用wget命令下载
wget https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.40.tar.gz
如果没有wget命令,则先下载wget
yum install wget
[root@srlua001 tools]# tar -zxvf mysql-5.6.40.tar.gz
cd 进入mysql-5.6.40
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 \
-DMYSOL_DATADIR=/application/mysql-5.6.40/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0
cmake编译参数设置完毕之后,就会自动生成makefile,可以执行
make
make install
[root@srlua001 tools]#make
下载至100%
[root@srlua001 tools]#make && make install
当cmake,make,make install 成功的依次执行完毕后,看到如下内容,才表明正确
能执行如下操作就算是安装成功结束了!!
执行如下初始化命令
[root@srlua001 mysql-5.6.40]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql
以及看到如下的数据目录,表示mysql初始化正确
yum install vim -y
yum install net-tools -y
准备启动mysql
就得配置mysql的启动脚本
使用mysql初始化自动生成的管理脚本
提前准备好mysql的配置文件 my.cnf
在/application/mysql下创建tmp文件夹
1.默认情况下会出现这种错误
2.发现这里还是没有启动成功,是因为权限的问题
避免权限问题,把我们所有目录与子目录的属主与属组换成mysql
[root@srlua001 mysql]# chown -R mysql.mysql /application/mysql/
[root@srlua001 mysql]# netstat -tunlp|grep mysql
属于mysql服务端mysql-server已经正确启动了
就得用客户端去连接mysql,进行数据的增删改查
使用mysql命令连接
mysql -uroot -p
bash没找到mysql -uroot -p命令是因为环境变量里没有,所有我们要去把mysql路径写入PATH中
使路径生效
source /etc/profile
由于没有设置密码,不安全
希望对你有帮助!加油!
若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!