赞
踩
描述事物的符号记录,可以是数字文字、图形、图像、声音、语言等,数据有多种形式,它们都可以经过数字化后存入计算机。
存储数据的仓库,是长期存放在计算机内、有组织、可共享的大量数据的集合。数据库中的数据按照一定数据模型组织、描述和存储,具有较小的几余度,较高的独立性和易扩展性,并为各种用户共享,总结为以下几点:
数据结构化
数据的共享性高,冗余度低,易扩充
数据独立性高
数据由 DBMS统一管理和控制 (安全性、完整性、并发控制、故障恢复)
MySQL是一个小型关系数据库管理系统,开发者为瑞典MySQLAB公司。在2008年1月16号被sun公司10亿美金收购。2009年,SUN又被Oracle以74亿美金收购
目前MySQL被广泛地应用在Internet上的中小型网站中。由于体积小、速度快、总体拥有成本低,尤其是开放源代码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
下载使用MySQL自己的yum源
在windows端操作:
MySQL数据库存在多种版本,不同的版本在不同的平台上:
第一步:登陆 https://www.mysql.com 网站,访问DOWNLOADS界面
第二步: 下拉界面找到 MySQL Community (GPL) Downloads选项 点击确认
第三步:找到MySQL专属的yum仓库。点击进入。
第四步:由于此时我们使用的时Linux9版本,因此锁定图中选项, Download 点击确认
第五步:然后找到如图中选项,鼠标右击,选择复制链接:
https://dev.mysql.com/get/mysql80-community-release-el9-5.noarch.rpm
第六步:进入Linux命令窗口输入wget 链接 然后回车
[root@server ~]# wget https://dev.mysql.com/get/mysql80-community-release-el9-5.noarch.rpm
输入[root@server ~]# ls 确认是否完成下载
注意:mysql80-community-release-el9-5.noarch.rpm 是MySQL的yum源仓库,并非MySQL安装包
第七步:rpm安装MySQLyum仓库
[root@server ~]# rpm -ivh mysql80-community-release-el9-5.noarch.rpm
在yum仓库中过滤以下看MySQL是否存在
[root@server ~]# yum list | grep mysql
注意:图中mysql-community-server.x86_64 就是我们所需要的MySQL数据包名——来源为mysql yum 仓库输入以下命令开始安装
[root@server ~]# yum install mysql-community-server.x86_64 -y
第八步:后续配置
[root@server ~]# systemctl start mysqld # 启动
[root@server ~]# systemctl enable mysqld # 开机启动
[root@server ~]# systemctl status mysqld # 查看状态
第一步:密码查找
由于MySQL登陆默认需要密码,一般密码在日志文件中可以查看,因此:
[root@server ~]# vim /var/log/mysqld.log 查看密码为 # +t!#lqdkf0%L
或者利用命令直接过滤:
[root@server ~]# grep 'temporary password' /var/log/mysqld.log
2023-11-26T06:09:47.349189Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: +t!#lqdkf0%L
第二步:登陆
[root@server ~]# mysql -uroot -p
Enter password: # 在此处直接粘贴密码 +t!#lqdkf0%L注意:密码不回显 。因此粘贴后直接回车
我们还可以使用
[root@server ~]# mysql -uroot -p+t!#lqdkf0%L进行登录
注意:但此时我们还需要对密码进行重置,才能进行后续操作,否则就会提示报错
因此我们接下来对密码进行重置。
第三步:重置密码
输入命令:
mysql> alter user 'root'@'localhost' identified by 'Admin123!';
命令简析:
修改 账户 ‘管理员登录时所使用’@‘登录方式:本地登陆’ 设置新的密码 ‘Admin123!’;
mysql> show variables like 'validate_password.%';
mysql> show variables like 'validate_password.%'; # 解析: 查看 变量 用于匹配 'validate_password.%'; % :任意结尾 +-------------------------------------------------+--------+ | Variable_name | Value | +-------------------------------------------------+--------+ | validate_password.changed_characters_percentage | 0 | | validate_password.check_user_name | ON | | validate_password.dictionary_file | | | validate_password.length | 8 | # 密码长度 8为 | validate_password.mixed_case_count | 1 | # 包含大小写个数 | validate_password.number_count | 1 | # 包含数字个数 | validate_password.policy | MEDIUM | # 密码验证等级:中级 | validate_password.special_char_count | 1 | # 包含的特殊字符个数 +-------------------------------------------------+--------+ 8 rows in set (0.04 sec)
修改密码等级以及密码位数:
mysql> set global validate_password.policy=low;
mysql> set global validate_password.length=6;
此时我们在对密码进行修改:
mysql> alter user 'root'@'localhost' identified by '123456';
第四步:测试
我们退出,然后使用新设置的密码进行登录
mysql> exit
Bye
[root@server ~]# mysql -uroot -p
Enter password:此时我们就可以开始执行其他命令了
mysql> show databases;
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.02 sec)
查看MySQL服务的端口
mysql> show global variables like 'port';
利用MySQL的RPM捆绑包下载安装。
第一步:登陆 https://www.mysql.com 网站,访问DOWNLOADS界面
第二步: 下拉界面找到 MySQL Community (GPL) Downloads选项 点击确认
第三步:找到MySQL Community Server点击进入。
第四步:找到MySQL对应的RPM捆绑包,然后点击确认;
注:在此之前,应先选择对应的操作系统,以便后续网页给出对应的MySQL的RPM捆绑包
第五步: 复制对应的链接,然后在迅雷下载安装包
第六步:
利用Xftp将下载好的RPM捆绑包,上传到Linux的根目录下
第七步:
解压缩:[root@server /]# tar -xvf mysql-8.2.0-1.el9.x86_64.rpm-bundle.tar
第八步:
由于该安装包为捆绑包,因此需要一次性将其全部安装。因此我们使用联合安装
联合安装:
确认所需安装的安装包
mysql-community-server-8.2.0-1.el9.x86_64.rpm # 服务端安装包
mysql-community-client-8.2.0-1.el9.x86_64.rpm # 客户端安装包不安装会无法登录
mysql-community-common-8.2.0-1.el9.x86_64.rpm # 公共库
mysql-community-icu-data-files-8.2.0-1.el9.x86_64.rpm # 支持正则的文件库
mysql-community-client-plugins-8.2.0-1.el9.x86_64.rpm # 客户端的插件
mysql-community-libs-8.2.0-1.el9.x86_64.rpm # 用于支持开发有关C++的,(选择性安装)
[root@server /]# yum localinstall mysql-community-server-8.2.0-1.el9.x86_64.rpm \
> mysql-community-client-8.2.0-1.el9.x86_64.rpm \
> mysql-community-common-8.2.0-1.el9.x86_64.rpm \
> mysql-community-icu-data-files-8.2.0-1.el9.x86_64.rpm \
> mysql-community-client-plugins-8.2.0-1.el9.x86_64.rpm \
> mysql-community-libs-8.2.0-1.el9.x86_64.rpm # 由于命令太长因此我们使用"\"分行写
[root@server /]# yum localinstall mysql-community-server-8.2.0-1.el9.x86_64.rpm \ > mysql-community-client-8.2.0-1.el9.x86_64.rpm \ > mysql-community-common-8.2.0-1.el9.x86_64.rpm \ > mysql-community-icu-data-files-8.2.0-1.el9.x86_64.rpm \ > mysql-community-client-plugins-8.2.0-1.el9.x86_64.rpm \ > mysql-community-libs-8.2.0-1.el9.x86_64.rpm
第九步:
启动服务 [root@server ~]# systemctl start mysqld
查询密码,寻找默认密码
[root@server ~]# grep 'temporary password' /var/log/mysqld.log
2023-11-27T07:34:38.790719Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: yY)g%s%J,9;J
[root@server ~]# mysql -uroot -p
Enter password: # 注意:密码不回显 。输入密码后直接回车
第十步:重置密码
输入命令:
mysql> alter user 'root'@'localhost' identified by 'Admin123!';
命令简析:
修改 账户 ‘管理员登录时所使用’@‘登录方式:本地登陆’ 设置新的密码 ‘Admin123!’;
使用命令 exit 退出然后重新登陆
生产环境中使用通用二进制包安装
第一步:登陆 https://www.mysql.com 网站,访问DOWNLOADS界面
第二步: 下拉界面找到 MySQL Community (GPL) Downloads选项 点击确认
第三步:找到MySQL Community Server点击进入。
第四步:
按照图片调出对应的二进制通用安装包选项,点击确认
单击鼠标输入安装包所需条件及版本号等, 左键直接下载下载。
第五步:使用Xftp将其上传至Linux
在根目录下解压
[root@server /]# tar -xvf mysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar
# 解压后会显示三个压缩包
mysql-test-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz
mysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz # 安装包必须安装
mysql-router-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz继续解压:
[root@server /]# tar -xvf mysql-8.0.33-linux-glibc2.17-x86_64-minimal.tar.xz
绿色版MySQL:
解压完成后会出现 mysql-8.0.33-linux-glibc2.17-x86_64-minimal 这一文件,此时MySQL已经可以运行。但运行效果不佳,因此执行以下操作。
第六步:
首先将其移动默认安装文件的路径,
[root@server /]# mv mysql-8.0.33-linux-glibc2.17-x86_64-minimal /usr/local/mysql
[root@server mysql]# groupadd mysql
[root@server mysql]# useradd -r -g mysql -s /bin/false/ mysql
# 命令含义,创建一个账户mysql; -g :将其加入到mysql工作组中-s:该账户所使用的shell存放在/bin/false下(意思为不能登陆)
创建一个目录来存放Mysql所使用的数据文件 [root@server mysql]# mkdir mysql-files
[root@server mysql]# chown mysql:mysql mysql-files/ # 为文件配置工作组
[root@server mysql]# chmod 750 mysql-files/ # 设置文件所使用的权限
第七步:对软件进行初始化
[root@server mysql]# bin/mysqld --initialize --user=mysql
# 产生的初始密码为: b.elap7pJ+9V
设置支持安全通道传输
[root@server mysql]# bin/mysql_ssl_rsa_setup
[root@server mysql]# bin/mysqld_safe --user=mysql & # 启动mysql# 调用文件脚本bin/mysqld_safe 执行账户为mysql 后台执行:&
# bin/mysqld_safe:为执行脚本文件
# bin/mysql:为登陆脚本文件
第八步:
由于二进制通用安装包为绿色软件,因此需要在一个会话链接中开启进程,在另一个会话中登陆
使用Xshell在开启一个终端,执行以下命令(原因:现所在的终端正在后台运行MySQL因此无法进行其他输入)
输入 [root@server mysql]# ps -ef |grep mysql
查看是否有正在运行的MySQL进程进入文件/usr/local/mysql/登陆MySQL
[root@server mysql]# cd /usr/local/mysql/
调用脚本进行MySQL的登陆:
[root@server mysql]# bin/mysql -uroot -p # 会产生报错
bin/mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory # 报错原因:redhat版本较新,版本为/libncurses.so.6。但 mysql要求版本为libncurses.so.5 因此版本不一致才会产生此类报错[root@server mysql]# find / -name 'libncurses*'
/usr/lib64/libncurses.so.6
/usr/lib64/libncurses.so.6.2
/usr/lib64/libncursesw.so.6
/usr/lib64/libncursesw.so.6.2
# 虽然版本不一致但内容一致,因此/usr/lib64/libncurses.so.6也可以使用,解决办法如下:
[root@server mysql]# ln -s /usr/lib64/libncurses.so.6.2 /usr/lib64/libncurses.so.5
# 建立软连接
[root@server mysql]# bin/mysql -uroot -p
bin/mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory # 报错原因同上,解决办法同上
[root@server mysql]# find / -name "libtinfo*"
/usr/lib64/libtinfo.so.6
/usr/lib64/libtinfo.so.6.2
[root@server mysql]# ln -s /usr/lib64/libtinfo.so.6.2 /usr/lib64/libtinfo.so.5
[root@server mysql]# bin/mysql -uroot -p # 此时就可以正常登陆了
Enter password:修改密码:
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123456'; # mysql_native_password:mysql5.7的密码验证插件
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges; # 刷新,不刷新密码无法通过
Query OK, 0 rows affected (0.01 sec)此时就看可以利用密码再次登陆 : 新密码123456
第九步:
由于此时MySQL的运行与登陆不在同一运行窗口内,在显示生产中不现实,因此解决方法如下:
查看此时后台运行的MySQL进程,并将其关闭:
[root@server mysql]# ps -ef | grep mysql
[root@server mysql]# kill -9 3284
[root@server mysql]# kill -9 3366
通过系统管理命令使MySQL启动:
9.1.设置MySQL的配置文件
[root@server mysql]# vim /etc/my.cnf
[client] # 客户端设置 port = 3306 # 设置端口号为3306 socket = /tmp/mysql.sock # MySQL的套间字存储路径 [mysqld] # 服务端 server-id = 1 # 服务端的唯一的编号 port = 3306 # 端口号 basedir = /usr/local/mysql # MySQL主目录存储路径 datadir = /usr/local/mysql/data # MySQL数据目录 tmpdir = /tmp # 临时目录 socket = /tmp/mysql.sock # 套接字 character-set-server = utf8mb4 # MySQL内的字符编码 collation-server = utf8mb4_general_ci # 字符集 init_connect='SET NAMES utf8mb4' default-storage-engine=INNODB # 引擎 log_error = error.log # 错误日志
9.2.配置启动脚本:
[root@server ~]# cd /usr/local/mysql/support-files/
[root@server support-files]# pwd
/usr/local/mysql/support-files注意:mysql.server为MySQL的启动脚本
9.3.将MySQL启动文件完全拷贝到/etc/init.d/mysql.server
[root@server support-files]# cp -a mysql.server /etc/init.d/mysql.server
没有init.d的原因:没有安装系统启动服务
[root@server support-files]# yum install chkconfig
[root@server support-files]# cp -a mysql.server /etc/init.d/mysql.server
再次拷贝时就不会出现报错了编辑启动文件:
[root@server ~]# vim /etc/init.d/mysql.server
定位46,47行
46 basedir=/usr/local/mysql # 启动目录
47 datadir=/usr/local/mysql/data # 数据目录保存退出然后重新加载配置文件
[root@server ~]# systemctl daemon-reload
[root@server ~]# systemctl start mysql此时使用[root@server ~]# bin/mysql -uroot -p 仍会报错
#原因:bin/mysql -uroot -p不是全局变量,因此我们需要添加全局变量。
编辑~/.bash_profile:
[root@server ~]# vim ~/.bash_profile
export PATH=$PATH:/usr/local/mysql/bin
[root@server ~]# source ~/.bash_profile # 执行使其生效
[root@server ~]# bin/mysql -uroot -p # 此时就可以将MySQL正常启动
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。