MySQL-ubuntu环境下安装配置mysql

文章目录


什么是数据库?

数据库本质上来讲其实就是一种存储数据的方式。可是为什么需要数据库来存储管理数据? 我们学过Linux操作系统,存储数据我们可以使用磁盘文件,而对于打开的文件我们的OS也有对应的数据结构来进行管理,那为什么我们还需要数据库呢?

这是因为OS对于文件内容的管理对于用户来讲,并不是那么的方便。我们如果要对文件中的内容来进行大量的增删查改操作,就需要我们上层的二次编码来进行操作。而数据库就很好的为用户解决了这一问题,它能更有效的管理数据。数据

库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。


提示:以下是本篇文章正文内容,下面案例可供参考

一、ubuntu环境下安装mysql

  1. 先将用户切换为root用户,以下安装配置都需要用到超级管理员权限来进行。
    su -

  2. 先检查当前主机是否已经下载了mysql或者mariadb
    dpkg -l | grep mysql-server
    dpkg -l | grep mariadb

如果有返回结果,那么就是已经下载安装了。

  1. 卸载曾经的mysql或mariadb环境
    apt remove mysql-server
    apt remove mariadb

  2. 下载安装mysql
    apt install -y mysql-server

  3. 查看安装并启动mysql服务

    对于安装的不同版本,有些mysql版本在下载安装时就已经默认开启了服务。有些则需要手动打开服务。

    查看是否打开mysql服务
    systemctl status mysql

打开mysql服务
systemctl start mysql or systemctl start mysqld

有些老版本需要启动的是mysqld。


输入命令
ps axj | grep mysql

如果看到有/usr/bin/mysqld进程也可以说明mysqld服务启动成功。

二、配置mysql配置文件

1.先登上root账号

由于刚安装好mysql,默认只会有一个账户,并且这个账户是root的。

所以我们先输入mysql -u root -p 登录root的账户。

这个时候要求你输入密码。 由于mysql版本不同大家这里可能会出现两种的情况。

  1. 较高版本的mysql,这里root密码直接就没有,直接输入回车就可以登录上root账户。
  2. 需要输入root的密码,但是因为这个密码我们怎么知道?

solution 1

#获取临时root密码
sudo grep 'temporary password' /var/log/mysqld.lo

2021-04-12T03:23:46.153263Z 1 [Note] A temporary password is generated for root@localhost:yLMalT:v+5l*

通过复制这个临时密码来进行登录root账户。

solution 2

#更改配置文件
vim /etc/my.cnf

在最后添加 skip-grant-tables()

然后重启mysql服务systemctl restart mysqld


至于如何更改账号密码,我们以后再讲。

2.配置文件的修改

不同版本的配置文件路径可能有不同。
vim /etc/my.cnf or vim /etc/mysql/my.cnf

在[mysqld]中添加

character-set-server=utf8 #使用utf-8编码格式

default-storage-engine=innodb #使用innodb存储引擎

然后重启mysql服务systemctl restart mysqld

show engines \G;

查看mysql支持的引擎。

mysql和mysqld

之前我们就学过客户端与服务端。在这里,mysql其实是客户端,mysqld是服务端(d代表daemon守护进程)。我们通常是使用mysql客户端来对mysqld中的数据库来进行访问数据。

当我们使用ps axj | grep mysql时,我们是可以看到mysqld是一直在启动着的。

当我们使用mysql -u root -p登录上mysql客户端后,再使用ps axj | grep mysql就可以看到

数据库的基础操作

登录mysql

mysql -u root -p

创建数据库

create database helloworld 创建名为helloworld的数据库。

显示当前数据库

show databases;

这就是当前所拥有的数据库。

cd /var/lib/mysql进入该路径之后,我们可以观察到一些细节。

我们创建数据库其实就是创建了一个文件夹?

使用数据库

use helloworld; 使用数据库。

其实这个可以理解为是进入了helloworld数据库对应的文件夹。

创建表

首先要先使用use [databasename];

然后才可以创建表。
create table students(
id int,
name varchar(32),
age int,
gender varchar(2)
);

当我们进入cd /var/lib/mysql/helloworld

可以看到有一个students.idb的文件。

插入students表数据

insert into students (id, name, age, gender) values (1, '张三', 18, '男');
insert into students (id, name, age, gender) values (2, '李四', 19, '男');

打印students表数据

select * from students;

相关推荐
nongcunqq3 小时前
abap 操作 excel
java·数据库·excel
zhuyan1083 小时前
【远程桌面】在ubuntu中安装远程桌面
ubuntu
rain bye bye3 小时前
calibre LVS 跑不起来 就将setup 的LVS Option connect下的 connect all nets by name 打开。
服务器·数据库·lvs
冻咸鱼3 小时前
MySQL的配置
mysql·配置
阿里云大数据AI技术5 小时前
云栖实录|MaxCompute全新升级:AI时代的原生数据仓库
大数据·数据库·云原生
不剪发的Tony老师5 小时前
Valentina Studio:一款跨平台的数据库管理工具
数据库·sql
weixin_307779135 小时前
在 Microsoft Azure 上部署 ClickHouse 数据仓库:托管服务与自行部署的全面指南
开发语言·数据库·数据仓库·云计算·azure
六元七角八分5 小时前
pom.xml
xml·数据库
虚行6 小时前
Mysql 数据同步中间件 对比
数据库·mysql·中间件
奥尔特星云大使6 小时前
mysql读写分离中间件Atlas安装部署及使用
数据库·mysql·中间件·读写分离·atlas