离线安装 mysql
离线安装 mysql
一、ubunt arm
- 下载安装包
- 官网地址
- 下载压缩包
- 上传压缩包
# 将本地压缩包上传至服务器 $ scp mysql-8.4.6-linux-glibc2.28-aarch64.tar.xz root@host:/root/mysql/
- 解压
# 转到压缩包目录 $ cd /root/mysql/ # 解压压缩包 $ sudo tar -xvJf mysql-8.4.6-linux-glibc2.28-aarch64.tar.xz $ sudo mv mysql-8.4.6-linux-glibc2.28-aarch64 /usr/local/mysql
- 配置
- 创建数据目录
# 创建 mysql 数据目录 $ sudo mkdir -p /data/mysql/data # 创建 mysql 日志目录 $ sudo mkdir -p /data/mysql/log
- 创建配置文件
# 转到 etc 目录 $ cd /etc # 创建配置文件 $ sudo touch my.cnf
- 注意 :
my.cnf 不能随意修改名称,启动 mysql.server 会读取该配置文件(可尝试修改 mysql.server 文件)
- 写入配置
[mysqld] # 启用 mysql_native_password plugin mysql_native_password=ON # 跳过权限表 #skip_grant_tables=1 # mysql 启动用户 user=root # 绑定 IP bind-address=0.0.0.0 # 端口,为了安全不使用默认端口 port=13306 # 安装目录,没有安装到默认目录 /usr/local/mysql 下, # 使用自带的 mysql.server 脚本启动mysql服务必须配置 basedir=/usr/local/mysql log-error=/usr/local/mysql/data/orin8-desktop.err pid-file=/usr/local/mysql/data/orin8-desktop.pid # 数据目录 datadir=/data/mysql/data # 允许最大连接数 max_connections=100 # 允许连接失败的次数。 max_connect_errors=10 # 服务端使用的字符集 character-set-server=utf8mb4 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 查询日志 general_log = 1 general_log_file = /data/mysql/log/mysql.log # 慢查询日志 slow_query_log = 1 slow_query_log_file = /data/mysql/log/slow.log long_query_time = 2 # 错误日志 log_error = /data/mysql/log/error.log # 二进制日志 server_id = 1 log_bin = /data/mysql/log/mysql-bin log_bin_index=/data/mysql/log/mysql-bin.index binlog_format=MIXED binlog_expire_logs_seconds = 604800 max_binlog_size=500M [mysql] # 设置命令行客户端默认字符集 default-character-set=utf8mb4 [client] # 设置mysql客户端默认字符集 default-character-set=utf8mb4
- 创建数据目录
- 初始化 正常情况无错误信息输出
# 转到 mysql 二进制文件目录 $ cd /usr/local/mysql/bin # 初始化 mysql $ sudo ./mysqld --basedir=/usr/local/mysql --datadir=/data/mysql/data --user=root --initialize
- 启动 正常情况无错误信息输出
# 转到 support-files 目录 $ cd /usr/local/mysql/support-files # 启动 mysql $ sudo ./mysql.server start
- 停止
# 转到 support-files 目录 $ cd /usr/local/mysql/support-files # 启动 mysql $ sudo ./mysql.server stop
- 状态
# 转到 support-files 目录 $ cd /usr/local/mysql/support-files # 启动 mysql $ sudo ./mysql.server status
- 环境变量
# 配置环境变量 $ sudo export PATH=$PATH:/usr/local/mysql/bin
- 服务启动
# 拷贝启动文件 $ sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/ # 启动服务 $ sudo systemctl start mysql
- 重装
# 删除 data 目录相关文件 $ sudo rm -rf /data/mysql/data/* # 删除 log 目录相关文件 $ sudo rm -rf /data/mysql/log/* # 重新初始化 $ sudo ./mysqld --basedir=/usr/local/mysql --datadir=/data/mysql/data --user=root --initialize # 重新启动 $ sudo ./mysql.server start
- 参考
二、重置密码
- 停止服务
# 停止 mysql $ sudo systemctl stop mysql
- 启动 mysql 并跳过权限表
# 转到 bin 目录 $ cd /usr/local/mysql/bin # 启动 mysql 并跳过权限表 $ sudo ./mysqld_safe --skip-grant-tables &
- 进入数据库
$ sudo ./mysql
- 使用 mysql 数据库
$ use mysql;
- 设置运行远程连接
$ update user set host='%' where user ='root';
- 刷新权限表
$ FLUSH PRIVILEGES;
- 修改密码
$ update user set authentication_string='root' where user='root'; # 刷新权限表 $ FLUSH PRIVILEGES;
- 注意:设置完密码登录出现错误(ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%')
# 刷新权限表 $ FLUSH PRIVILEGES; # 将密码设置为空 $ update user set authentication_string='root' where user='root'; # 刷新权限表 $ FLUSH PRIVILEGES; # 重新登录(使用连接工具 navicat 无密码连接后会提示修改密码,后面可以使用修改后的密码) $ sudo ./mysql -u root -p
- 注意:设置完密码登录出现错误(ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%')
- 退出
$ exit;
- 验证
$ sudo ./mysql -u root -p
- 参考
如有帮助,欢迎转载,转载请注明原文链接:https://www.cnblogs.com/study10000/p/19133673