mysql
2024-01-09 22:53:14 0 举报
AI智能生成
mysql的安装及使用笔记
作者其他创作
大纲/内容
mysql安装
yum安装
rpm包安装
下载链接:https://downloads.mysql.com/archives/community/
RPM Bundle为mysql所有rpm包的集合包,而MYSQL Server则是mysql服务端的安装包<br>可以分别下载对应的安装包,也可以下载集合包。
卸载系统自带的mariadb
rpm -e postfix.x86_64
rpm -e mariadb-libs.x86_64
查看当前系统自带的mariadb<br>
yum list installed | grep mariadb<br>
yum list installed | grep postfix
<br>
<br>
安装
tar -xvf mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar
通常安装一下几个包即可
rpm -ivh mysql-community-common-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.43-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.43-1.el7.x86_64.rpm
查看mysql服务状态
systemctl status mysqld
启动服务
配置文件
默认配置路径为/etc/my.cnf
更改配置文件
创建目录
创建mysql用户
groupadd mysql
创建数据目录,最好单独挂载一个数据盘<br>有条件的,可以将日志单独拿出去<br>
mkdir -p /data/mysql/data<br>mkdir -p /data/mysql/log<br>
限制访问权限
chown -R mysql:mysql /data/mysql/<br>
chmod -R go-rwx /data/mysql/data/
移除 /data/mysql/data 目录及其下所有文件和子目录的组和其他用户的读、写、执行权限。这样的权限设置通常用于限制其他用户对MySQL数据库文件的访问。
chmod +t /data/mysql/
设置了一个目录的"Sticky Bit";对于目录来说,Sticky Bit会阻止普通用户删除其他用户在该目录下创建的文件,除非用户有对该文件的写权限。<br>如果对这个目录设置了Sticky Bit,那么这意味着在这个目录中创建的文件只能被其所有者或者有写权限的用户删除。<br>
启动服务
mysqld --initialize --user=mysql
初始化mysql数据库并指定以mysql用户去运行
当你运行这个命令时,MySQL 会尝试初始化数据库目录。这通常在首次安装 MySQL 或在需要重新初始化数据库时使用。在初始化过程中,会生成初始的系统表和数据库文件,并设置一个随机密码用于 root 用户。这个初始密码将会在输出中显示。
systemctl start mysqld<br>systemctl status mysqld
登录
获取初始密码
cat /data/mysql/log/mysql-error.log | grep pass
登录,重置密码
mysql -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
源码安装
mysql常用命令
登录mysql
登录mysql
mysql -u root -p
登录时指定端口
mysql -u root -p -P 3307<br>
查看库、表
查看库
SHOW DATABASES;<br>
其他命令
在 MySQL 服务器上直接执行mysql里的命令
mysql -u 用户名 -p<密码> -e "SQL命令"<br>
账号相关
安装并启用 validate_password 插件<br>
INSTALL PLUGIN validate_password SONAME 'validate_password.so';<br>
检查当前密码策略的相关变量信息:<br>
SHOW VARIABLES LIKE 'validate_password%';<br>
设置密码过期时间
SHOW VARIABLES LIKE 'default_password_lifetime';<br>
SET GLOBAL default_password_lifetime = 90;<br>
<br>
登录失败处理功能参数
# 设置允许的最大连接错误次数<br>max_connect_errors = 5<br><br># 设置连接超时时间<br>connect_timeout = 10<br><br># 设置非交互式连接的超时时间<br>wait_timeout = 900<br><br># 设置交互式连接的超时时间<br>interactive_timeout = 900<br><br>
PS:这两个设置了服务会起不来,识别不到这两个配置参数<br># 设置最小连接延迟时间为 600 秒(600000 毫秒)<br>#connection_control_min_connection_delay = 600000<br><br># 设置最大连接延迟时间为 2147483 秒(2147483000 毫秒)<br>#connection_control_max_connection_delay = 2147483000<br>
启用ssl支持并强制 SSL 远程访问
ssl=1<br>#have_openssl = YES<br>require_secure_transport = ON
0 条评论
下一页