首页 > 数据库 >linux 安装mysql

linux 安装mysql

时间:2023-11-09 22:55:18浏览次数:36  
标签:mysql 安装 linux 用户 MySQL 权限 root DDL

linux 安装mysql数据库的教程

1.安装数据库

1)yum -y install mysql-server(简单)

yum命令自动从网上寻找mysql服务资源,下载至本地并完成安装

2)也可以自己在网上下载mysql服务,通过xftp传输至Linux系统,自己安装(一般安装在usr或opt目录下)

2.启动数据库

安装完毕,执行命令service mysqld start

3.登录数据库

mysql -u root -p回车后输入密码(mysql的默认用户是root,密码为空)

目前安装最新的是8.0的

添加用户、外网访问

在MySQL 8.0中,root用户的外网访问权限默认是被禁止的。要修改root用户的外网访问权限,您需要进行以下步骤:

  1. 连接到MySQL服务器。您可以使用MySQL命令行客户端或其他数据库管理工具。

  2. 使用以下命令以root身份登录MySQL:

sudo mysql -u root -p

然后输入您的root用户密码。

  1. 输入以下命令以修改root用户的外网访问权限:
    在这里插入图片描述
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '您的密码';
CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '您的密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

请将 '您的密码' 替换为您要设置的root用户密码。

  1. 需要编辑MySQL配置文件以允许远程访问。找到并打开MySQL配置文件(通常在/etc/mysql/mysql.conf.d/mysqld.cnf/etc/mysql/my.cnf)。

  2. 在配置文件中找到bind-address行,并将其注释或更改为以下内容:

# bind-address = 127.0.0.1

这将允许MySQL接受来自所有IP地址的连接。

  1. 保存并关闭配置文件。

  2. 重新启动MySQL服务,使更改生效。使用适合您的操作系统的命令:

sudo service mysql restart

sudo systemctl restart mysql

现在,root用户应该具有外网访问权限。请注意,出于安全考虑,授予root用户远程访问权限可能会有风险。出于安全原因,建议使用具有更严格访问权限的用户,并限制远程访问仅限于需要的IP地址。

修改用户DDL、DML权限

要修改MySQL 8.0中的DDL(数据定义语言)和DML(数据操作语言)权限,您可以按照以下步骤进行操作:文章来源地址https://www.yii666.com/blog/527463.html文章地址https://www.yii666.com/blog/527463.html

步骤1:使用root用户登录MySQL

在命令行终端中,使用root用户登录MySQL服务器。执行以下命令:

mysql -u root -p

输入root用户的密码,然后按下回车键登录到MySQL。

步骤2:查看当前用户权限

查看当前用户的权限,可以使用以下命令:

SHOW GRANTS FOR '<your_username>'; 

<your_username>替换为您要修改权限的用户名。网址:yii666.com

步骤3:修改DDL权限网址:yii666.com<

a. 修改已存在用户的DDL权限:

在上一步中,您可以看到显示了当前用户的权限信息。查找到以GRANT ALTER, CREATE, DROP, INDEX, …开头的权限语句,这些权限允许用户进行DDL操作。如果希望取消某个DDL权限,可以使用以下示例命令:

REVOKE DROP ON your_database_name.* FROM '<your_username>';

your_database_name替换为您要更改权限的数据库名称,将<your_username>替换为要修改权限的用户名。

b. 修改新建用户的DDL权限:

如果要为新建用户设置默认的DDL权限,可以使用以下命令:

CREATE USER 'your_username'@'localhost';
GRANT CREATE, ALTER, DROP, INDEX, … ON your_database_name.* TO 'your_username'@'localhost';

your_usernameyour_database_name替换为适当的值,并根据需要添加其他DDL权限。

步骤4:修改DML权限

要修改DML权限,您可以按照步骤3的示例将DDL替换为DML。例如,如果要授予或撤销INSERT权限,可以使用以下命令:

授予INSERT权限:

GRANT INSERT ON your_database_name.* TO 'your_username'@'localhost';

撤销INSERT权限:

REVOKE INSERT ON your_database_name.* FROM 'your_username'@'localhost';

根据您的需求,调整语句中的数据库、用户名和权限。文章来源地址:https://www.yii666.com/blog/527463.html

步骤5:刷新权限

当您完成对权限的修改后,必须刷新MySQL的权限缓存,以使更改生效。使用以下命令:

FLUSH PRIVILEGES;

这将刷新权限并使修改后的权限立即生效。

步骤6:退出MySQL

完成所有权限修改后,可以使用以下命令退出MySQL:

EXIT;

这将退出MySQL命令行终端。

通过按照上述步骤,您可以在MySQL 8.0中修改DDL和DML权限。请注意,修改权限可能会对数据库的安全性和数据完整性产生影响,请谨慎操作。

DDL、DML权限列表

以下是MySQL中的常见DDL和DML权限列表:

DDL权限(数据定义语言):

  • CREATE:创建新数据库、表、视图、函数、存储过程等。
  • ALTER:修改数据库结构,如更改表的结构(添加/删除列)、修改列的属性等。
  • DROP:删除数据库、表、视图、函数、存储过程等。
  • INDEX:创建、修改或删除索引。
  • TRIGGER:创建、修改或删除触发器。
  • VIEW:创建、修改或删除视图。
  • SHOW VIEW:查看视图的定义信息。
  • GRANT OPTION:授予其他用户权限。

DML权限(数据操作语言):

  • SELECT:从表中检索数据。
  • INSERT:向表中插入新的行。
  • UPDATE:更新表中已有的行。
  • DELETE:从表中删除数据。
  • EXECUTE:执行存储过程或函数。

这些权限可以单独授予或撤销给特定的用户或用户组。请注意,在实际使用中,根据具体需要,可以进一步细分DDL和DML权限。

标签:mysql,安装,linux,用户,MySQL,权限,root,DDL
From: https://www.cnblogs.com/wangyu19900123/p/17823088.html

相关文章

  • CentOS 7下安装配置Nginx
    本文基于CentOS7下安装配置Nginx操作实践记录整理。一、配置EPEL源sudoyuminstall-yepel-releasesudoyum-yupdate二、安装Nginx sudoyuminstall-ynginx 安装成功后,默认的网站目录为:/usr/share/nginx/html默认的配置文件为:/etc/nginx/nginx.conf......
  • linux驱动模型--Apple的学习笔记
    一,前言既然是复习设备驱动,第一步当然是做一个最简单的基于设备树的驱动applechar,然后insmod和rmmod使用下,接着要回忆下driver和device是怎么match的,且把相关结构体复习下。看了下结构体发现有点忘记了,另外match的函数也忘记了。有些东西不需要死记硬背,通过代码分析的方法论找到它即......
  • process-exporter 监控linux机器进程使用情况
    process-exporter监控linux机器进程使用情况背景前期一直想进行关于IP地址的来源和目的地的监控但是耗费了很多精力都没有搞定.感觉应该去偷师一下安全监控软件的使用方式.今天晚上再github上面漫无目的的进行exporter的查找依旧一无所获,但是找到了process-expor......
  • mysql 找空数据 必须 is null
      ......
  • centos7.9安装kubernetes1.27.4版本
    ./etc/os-releasecolor(){RES_COL=60MOVE_TO_COL="echo-en\\033[${RES_COL}G"SETCOLOR_SUCCESS="echo-en\\033[1;32m"SETCOLOR_FAILURE="echo-en\\033[1;31m"SETCOLOR_WARNING="echo-en\\0......
  • MySQL 数据库表格创建、数据插入及获取插入的 ID:Python 教程
    创建表格要在MySQL中创建表格,请使用"CREATETABLE"语句。确保在创建连接时定义了数据库的名称。示例创建一个名为"customers"的表格:importmysql.connectormydb=mysql.connector.connect(host="localhost",user="yourusername",password="yourpassword&qu......
  • python升级到3.12版本, 开发模式安装包, 在vscode下Pylance无法解析的问题处理
    问题描述在python3.11版本下开发python库,为方便调测,使用开发模式安装包.使用如下命令:pipinstall-e.其中-e参数表示开发模式下安装python包,它并没有把包相关文件拷贝到site-packages目录,而是创建一个链接指向当前的开发库.这样,当自己开发的包修改后会立即生效,......
  • MYSQL的安装
    1.下载安装包https://www.mysql.com/downloads/2.双击打开3.点击custom4.选择过滤项,64位的机器选择64位的5.选择只安装服务6.点击execute执行7.会有一个需要安装c++的窗,点击统一就行,然后点击next8.继续执行9.等执行完10.点击next11.再点击next12.默认next13.网络通信默认,next14.......
  • MySQL 数据库表格创建、数据插入及获取插入的 ID:Python 教程
    创建表格要在MySQL中创建表格,请使用"CREATETABLE"语句。确保在创建连接时定义了数据库的名称。示例创建一个名为"customers"的表格:importmysql.connectormydb=mysql.connector.connect(host="localhost",user="yourusername",password="yourpassword&qu......
  • Linux awk命令
    除了使用sed命令,Linux系统中还有一个功能更加强大的文本数据处理工具,就是awk。曾有人推测awk命令的名字来源于awkward这个单词。其实不然,此命令的设计者有3位,他们的姓分别是Aho、Weingberger和Kernighan,awk就取自这3为大师姓的首字母。和sed命令类似,awk命令也是......