linux(ARM)架构下的mysql安装使用(完整版)
Posted 吻等离子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux(ARM)架构下的mysql安装使用(完整版)相关的知识,希望对你有一定的参考价值。
目录
一、安装mysql之前要先换源
1.备份系统之前的源,也可以不备份,将之前的源注释掉
cp /etc/apt/sources.list /etc/apt/sources.list.bak
2.修改源文件/etc/apt/sources.list
vim /etc/apt/sources.list
将原来的内容删除,将下面的源内容粘贴上。
3.这里推荐比较好的两个国内源
3.1阿里源(arm64,速度快,推荐)
deb http://mirrors.aliyun.com/ubuntu-ports/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu-ports/ xenial main
deb http://mirrors.aliyun.com/ubuntu-ports/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu-ports/ xenial-updates main
deb http://mirrors.aliyun.com/ubuntu-ports/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu-ports/ xenial universe
deb http://mirrors.aliyun.com/ubuntu-ports/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu-ports/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu-ports/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu-ports/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu-ports/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu-ports/ xenial-security universe
3.2 华为源(arm64,速度快,二者选其一)
deb https://repo.huaweicloud.com/ubuntu-ports/ bionic main restricted universe multiverse
deb-src https://repo.huaweicloud.com/ubuntu-ports/ bionic main restricted universe multiverse
deb https://repo.huaweicloud.com/ubuntu-ports/ bionic-security main restricted universe multiverse
deb-src https://repo.huaweicloud.com/ubuntu-ports/ bionic-security main restricted universe multiverse
deb https://repo.huaweicloud.com/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb-src https://repo.huaweicloud.com/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb https://repo.huaweicloud.com/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb-src https://repo.huaweicloud.com/ubuntu-ports/ bionic-backports main restricted universe multiverse
## Not recommended
# deb https://repo.huaweicloud.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse
# deb-src https://repo.huaweicloud.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse
4.更新仓库
apt-get update
4.1处理报错
可能出现报错
由于没有公钥,无法验证下列签名...
以下命令解决:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 40976EAF437D05B5 3B4FE6ACC0B21F32
5.清除软件仓库缓存
apt-get clean
6.更新软件仓库
apt-get update
完成,可以安装MYSQL了
二、安装MYSQL
1、安装
sudo apt-get install mysql-server //服务端
sudo apt-get install mysql-client //客户端
sudo apt-get install libmysqlclient-dev //程序编译时链接的库
2、安装完成
安装完成之后dpkg命令查看状态
dpkg -l | grep mysql
输出以下信息则安装成功
ii mysql-client-5.7 5.7.39-0ubuntu0.18.04.2 arm64 MySQL database client binaries
ii mysql-client-core-5.7 5.7.39-0ubuntu0.18.04.2 arm64 MySQL database core client binaries
ii mysql-common 5.8+1.0.5 all MySQL database common files, e.g. /etc/mysql/my.cnf
ii mysql-server 5.7.39-0ubuntu0.18.04.2 all MySQL database server (metapackage depending on the latest version)
ii mysql-server-5.7 5.7.39-0ubuntu0.18.04.2 arm64 MySQL database server binaries and system database setup
ii mysql-server-core-5.7 5.7.39-0ubuntu0.18.04.2 arm64 MySQL database server binaries
使用如下命令启动mysql
service mysql start
启动后使用如下命令查看状态
sudo netstat -anp | grep mysql
显示如下说明启动成功:
tcp6 0 0 :::3306 :::* LISTEN 27608/mysqld
unix 2 [ ACC ] STREAM LISTENING 648125 27608/mysqld /var/run/mysqld/mysqld.sock
unix 3 [ ] STREAM CONNECTED 648111 27608/mysqld
使用命令进行登陆
mysql -u root -p
输入密码,进行登陆,如果之前没有设置密码请看第3步
aaron@aaron-Raytine-PC:~$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \\g.
Your MySQL connection id is 9
Server version: 5.7.30-0ubuntu0.18.04.1 (Ubuntu)
Copyright © 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\\h’ for help. Type ‘\\c’ to clear the current input statement.
mysql>
3、安装后无法登陆
3.1 原因
原因一(大部分):
你是root安装的: 在本机命令行下输入: mysql -uroot 就可以直接登录,然后修改用户名密码啥的
原因二:
使用mysql -u root -p命令但是不知道root密码是因为之前没有设置,这个时候进行环境配置,设置root密码。
1、首先,进行忽略密码登陆,打开配置文件
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
2、在最后加入skip-grant-tables
# # Read the manual, too, if you want chroot! # chroot = /var/lib/mysql/ # # For generating SSL certificates I recommend the OpenSSL GUI "tinyca". # # ssl-ca=/etc/mysql/cacert.pem # ssl-cert=/etc/mysql/server-cert.pem # ssl-key=/etc/mysql/server-key.pem skip-grant-tables -- 插入 --
3、保存退出
4、重启以下mysql服务
sudo service mysql stop
sudo service mysql start
5、重新登陆
mysql -u mysql
进行3.2步骤,所有步骤执行完注释掉skip-grant-tables
原因三:没有把之前的mysql卸载干净
彻底删除MySQL
在删除mysql前 须要先删除一下 /var/lib/mysql 还有 /etc/mysqlubuntu
先停止mysql服务
systemctl stop mysql
须要输入如下几条命令
sudo rm /var/lib/mysql/ -R sudo rm /etc/mysql/ -R sudo apt-get autoremove mysql* --purge sudo apt-get remove apparmor
确保没有mysql的文件夹可忽略此步骤
sudo find / -name mysql
再次安装
sudo apt-get install mysql-server //服务端 sudo apt-get install mysql-client //客户端 sudo apt-get install libmysqlclient-dev //程序编译时链接的库
3.2 登陆后切换database
登录
~$ sudo mysql -u root -p
Enter password:
直接回车
Welcome to the MySQL monitor. Commands end with ; or \\g.
Your MySQL connection id is 3
Server version: 5.7.39-0ubuntu0.18.04.2 (Ubuntu)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\\h' for help. Type '\\c' to clear the current input statement.
mysql>
换为database
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql>
3.3 修改密码(注意这里账号和密码是双引号)
mysql> update user set authentication_string=PASSWORD("123456") where user="root";
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 1
3.4查看一下用户
select user,host from mysql.user;
出现以下信息则配置完成
mysql> select user,host from mysql.user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| debian-sys-maint | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)
3.5 然后进行刷新使得配置生效
flush privileges;
3.6 退出
quit
3.7 重启
sudo service mysql restart
三、mysql使用测试
1、建立一个数据库
mysql> create database joyrun;
Query OK, 1 row affected (0.00 sec)
2、查看当前数据库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| joyrun |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)
3、建立一个表
mysql> use joyrun
Database changed
mysql> create table tbl_run(id int,name varchar(5),primary key (id));
Query OK, 0 rows affected (0.01 sec)
4、查看表的结构
mysql> desc tbl_run;
+-------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| name | varchar(5) | YES | | NULL | |
+-------+------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
5、修改字节长度
mysql> alter table tbl_run modify column name varchar(20);
Query OK, 0 rows affected (0.01 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc tbl_run;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | NO | PRI | NULL | |
| name | varchar(20) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
6、现在表中不能添加中文字段,修改字符集后才可以
修改库字符集:alter database joyrun character set utf8;
修改表字符集:alter table tbl_run character set utf8;
修改字段字符集:alter table tbl_run change name name varchar(20) character set utf8;
7、增加一条数据
mysql> insert into tbl_run (id,name) values (1,'xiaoming');
Query OK, 1 row affected (0.01 sec)
mysql> select * from tbl_run;
+----+----------+
| id | name |
+----+----------+
| 1 | xiaoming |
+----+----------+
1 row in set (0.00 sec)
001 linux下的mysql的安装
一 .概述
现在主流的版本之中,我们一般会使用mysql的5.5版本和5.7版本,当然现在也出现了8的版本,但是现在企业之中使用最多的就是之前的两个稳定的版本.
本次,我们使用mysql的5.7的版本完成所有的操作.
二 .mysql的安装
本次使用的rpm包的方式进行软件的安装,我们首先需要到网站上下载5.7对应的软件包.
https://dev.mysql.com/downloads/mysql/
在这里我们选择使用对应的5.7的版本,需要下载两个软件包,一个是mysql的server包,一个就是mysql的client包.
当下载完成之后,我们会得到下面的两个软件包.
我们首先需要将这两个软件包上传到我们的服务器上面.我们一般将第三方的软件包都放在 /opt目录下面.
[1] 首先卸载掉自带的mysql软件
在centos7的版本之中,默认的就存在一个mysql的分支数据库,如果我们不首先删除掉这个数据库的话,我们在安装的时候就可能出现问题.
我们使用rpm -e --nodeps 软件包的名称就可以删除掉之前安装的软件了,我们再次查看情况.
现在发现之前内置的maliyadb被删除掉了.
同时我们再次查询mysql是否已经安装过,发现现在是没有安装过的.
[2] 安装的时候需要的依赖
perl的依赖,我们使用yum install 安装perl的依赖内容.
net-tools被依赖需要:我们执行yum install net-tools进行安装.
在安装的过程之后,我们会发现很多的依赖都是需要的,我们安装提示进行安装就好了.
我们安装后要求一次添加所需要的依赖,将所有的安装包进行安装.
当我们安装好了之后,我们需要进行软件完成之后的一个校验:
如果出现上述的内容,就说明我们的软件已经安装完成.
[3] mysql的配置问题
启动mysql,在mysql5.7的版本之中变成了mysql的命令.
当我们完成安装之后,我们需要给我们的mysql设置一个密码.
一. 首先到mysql 的网站上载 mysql rpm包的合集
我们选择免费的社区版
下载完成之后解压 里面有很多mysql 的包,这们主要安装下面划红线的四个包就可以了,安装 的顺序也标出了
注意:
在centos7下 rpm 安装以上包会报错,其报错信息如图
首先centos7 已经不支持mysql,因为收费了你懂得,所以内部集成了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,以下为卸载mariadb,安装mysql的步骤。
#列出所有被安装的rpm package
rpm -qa | grep mariadb
强制卸载 mariadb 软件包
完成之后就可以安装了,在安装 mysql-server 服务端的时候又有报错
这时就 yum install -y net-tools
再进得安装就好了
安装完成后可以 在 /etc/my.cnf (mysql的配置文件) /usr/bin /usr/sbin/ 中有相应的命令 数据库在 / var/lib/mysql 中,在my.cnf 可以查看到
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
此时mysql安装完成,但是没有用户名和密码,登录不了客户端,有很多做法,我的做法是这样的
1。首先,vim /etc/my.cnf 文件,在文件的最后一行,添加一句话 skip-grant-tables //这样就可以让mysql 跳过检验密码的步骤
2 。开启mysql 服务端 service mysqld start //
3 . 登录mysql的客户端 mysql -u root -p 回车 不用输入密码,就进入了客户端
此是就可以把 mysql 数据库中的 user表中的 root 用户的记录更改一下,密码
这里要注意用户的密码字段不 是 password ,表中根本没有这个字段 应该是
修改的语句是
use mysql
update user set authentication_string = PASSWORD(‘123456‘) password_expired = ‘N‘ where user =‘root‘
修改完成后,退出
再把 my.cnf 中最后添加的那句话删除掉
重启mysqld
客户端登录 输入刚才的密码 就ok了
在这里,可能会出现下面的问题:
[1] 远程访问的问题:
grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘123456‘ with grant option;
flush privileges;
[2]密码的问题:
set
global
validate_password_policy=0; 设置密码需要采取的策略,0代表为长度策略.
set
global
validate_password_length=1; 设置密码最少为1位长度.
以上是关于linux(ARM)架构下的mysql安装使用(完整版)的主要内容,如果未能解决你的问题,请参考以下文章
PK服务器arm架构 Filebeat 7.4.1安装和部署
基于ARM64的CPU架构下的docker-compose安装
cygwin 中如何安装arm-linux-gcc交叉编译器