ubuntu20.04安装mysql_Ubuntu20.04安装MySQL

准备

安装 libiao 依赖库。

sudo apt install libaio1 libaio-dev

创建一个不能不能登录的 mysql 系统用户,这个用户默认属于 mysql 用户组。

sudo useradd -r -s /bin/false mysql

去官网下载 tar.xz 格式的安装包。地址如下

https://www.mysql.com/downloads/

安装

解压。

tar -xvf ./mysql-8.0.17-linux-glibc2.12-x86_64.tar.xz

将解压出来的 mysql-8.0.17-linux-glibc2.12-x86_64 文件夹重命名为 mysql-8.0.17 并移动到 /usr/local 目录下。

sudo mv ./mysql-8.0.17-linux-glibc2.12-x86_64 /usr/local/mysql-8.0.17

进入 mysql-8.0.17 目录下。

cd /usr/local/mysql-8.0.17

创建一个 data 文件夹。

sudo mkdir ./data/

修改 data 用户为 mysql。

sudo chown mysql:mysql ./data/

初始化 mysql。

sudo ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-8.0.17/ --datadir=/usr/local/mysql-8.0.17/data

在终端中找到类似以下的信息,其中 root@local: 后面的便是 mysql 随机初始化的密码,可以先记下来,初次登录的时候要用。

[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: #gqdJRqYh0l&

修改mysql-8.0.17/support-files/mysql.server 文件。

sudo vim ./support-files/mysql.server

找到以下几行内容。

# If you change base dir, you must also change datadir. These may get

# overwritten by settings in the MySQL configuration files.

basedir=

datadir=

将其中的 basedir、datadir 改为。

basedir=/usr/local/mysql-8.0.17

datadir=/usr/local/mysql-8.0.17/data

如果你的 mysql 路径为 /usr/local/mysql 以及 /usr/local/mysql/data,就不用改直接下一步。

启动服务及后续操作

启动 mysql 服务

sudo ./support-files/mysql.server start

2 .把 mysql 服务放进系统进程,这样便可以使用 service 命令管理 mysql 。

sudo cp ./support-files/mysql.server /etc/init.d/mysqld.server

为 mysql 创建软链接。

sudo ln -s ./bin/mysql /usr/bin/

登录并修改密码

mysql -u root -p

填入刚才生成的随机密码,回车执行以下 SQL 语句修改密码

alter user 'root'@'localhost' identified by '新密码';

设置开机自启

systemctl 是RHEL 7 的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。可以使用它永久性或只在当前会话中启用/禁用服务。Ubuntu 自带了 systemctl 工具,因此这里使用 systemctl 设置 mysql 自动启动。步骤如下

创建 mysqld.service

sudo vim /usr/lib/systemd/system/mysqld.service

输入以下内容并保存

Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html

After=network.target

After=syslog.target

[Install]

WantedBy=multi-user.target

[Service]

Type=forking

User=mysql

Group=mysql

PIDFile=/usr/local/mysql-8.0.17/data/demon-PC.pid

ExecStart=/usr/local/mysql-8.0.17/support-files/mysql.server start

ExecStop=/usr/local/mysql-8.0.17/support-files/mysql.server stop

ExecReload=/usr/local/mysql-8.0.17/support-files/mysql.server restart

设置开机自启

sudo systemctl enable mysqld.service

Ubuntu 20.04 LTS 安装时遇到的坑

根据上面步骤安装 MySQL 成功,但是登录时报以下错误

mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory

应该是 Ubuntu 20.04 缺少 libtinfo.so.5 这个库的原因。解决方法

安装 libncurses5 库

sudo apt install libncurses5

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值