ubuntu连接mysql命令_远程服务器 ubuntu 安装 mysql 及连接使用

远程服务器 ubuntu 安装 mysql 及连接使用

MySQL是最流行的开源关系数据库管理系统。它速度快,容易使用,容易扩展,并且流行的LAMP和LEMP的一部分。

这篇指南讲解了如何在 Ubuntu 20.04上安装和保护 MySQL。

环境

Ubuntu 20.04

MySQL 8

安装

登录到远程服务器

执行安装命令

sudo apt update

sudo apt install mysql-server

复制代码

安装完成,MySQL 服务会自动启动,验证 MySQL 服务器正在运行

sudo systemctl status mysql

复制代码

保护加固

运行指令

sudo mysql_secure_installation

复制代码

配置VALIDATE PASSWORD PLUGIN,用来测试 MySQL 用户密码的强度,有三个级别的密码验证策略,接下来的操作都选 y

登录

在MySQL 8 上,root 用户默认通过auth_socket插件授权。

auth_socket插件通过 Unix socket 文件来验证所有连接到localhost的用户。这意味着你不能通过提供密码,验证为 root。

以root用户身份登录

sudo mysql

复制代码

如果你想以 root 身份登录 MySQL 服务器,使用其他的程序,例如 phpMyAdmin,你有两个选择。

第一个就是将验证方法从auth_socket修改成mysql_native_password。你可以通过运行下面的命令实现:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'very_strong_password';

FLUSH PRIVILEGES;

复制代码

第二个选项,推荐的选项,就是创建一个新的独立管理用户,拥有所有数据库的访问权限:

GRANT ALL PRIVILEGES ON *.* TO 'administrator'@'localhost' IDENTIFIED BY 'very_strong_password';

复制代码

至此,你可以远程服务器进行连接 MySQL

远程连接

如果你想在本地连接安装在远程服务器的 MySQL,需注意以下几点:

修改 远程服务器 MySQL root 用户的host 为 %,登录MySQL 后 执行 use mysql; ,然后查看root用户的host selcet user,host from user;,如果 user 的 host 不是 %,执行

update user set Host = '%' where user = 'root';

flush privileges; // 更新权限

复制代码

注:host 为 % 表示所有 ip 都有连接权限

查看 etc/mysql/my.cnf 文件

bind-address = 127.0.0.1

复制代码

如果有,注释掉,不然只能监听 本机地址

服务器上放行 3306 端口

本地使用 Navicat 连接远程服务器上的 MySQL

a68c4fbf6a451253dfdc0c17f22d3f74.png

MySQL 基础使用命令

连接

mysql -h主机地址 -u用户名 -p密码 // 连接 MySQL

mysql> exit/quit; // 退出 MySQL

复制代码

修改密码

root密码为空时,设置root密码:

mysql> mysqladmin -uroot newpassword; -- 因为开始时root没有密码,所以-p旧密码 可以省略

复制代码

使用 sqladmin 命令修改密码:

mysql> mysqladmin -uroot -p123456 password 12345678;

复制代码

使用set passsword命令修改密码:

mysql> set password for 用户名@localhost = password('新密码');

复制代码

忘记root密码情况下:

mysqld --skip-grant-tables

mysql> use mysql; --连接权限数据库

mysql> update user set password=password("新密码") where user="root"; -- 改密码

mysql> flush privileges;    -- 刷新权限

mysql> quit;    -- 退出mysql

复制代码

使用

创建数据库:

mysql> create database db_name; -- 创建数据库

mysql> show databases; -- 显示所有的数据库

mysql> drop database db_name; -- 删除数据库

mysql> use db_name; -- 选择数据库

mysql> create table tb_name (字段名 varchar(20), 字段名 char(1)); -- 创建数据表模板

mysql> show tables; -- 显示数据表

mysql> desc tb_name; -- 显示表结构

mysql> drop table tb_name; -- 删除表

复制代码

插入数据:

/*第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:*/

mysql> insert into tb_name values (value1,value2,value3,...);

/*第二种形式需要指定列名及被插入的值:*/

mysql> insert into tb_name (column1,column2,column3,...) values (value1,value2,value3,...);

复制代码

查询数据:

select

[into 新表名]

from 表名或视图名

[where ]

[[group by ]

[having ]

[order by [ASC|DESC]]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值