做一家网站的成本,山东省住房城乡建设部网站首页,番禺推广优化,wordpress中国风主题ubuntu环境搭建专栏#x1f517;点击跳转
Ubuntu系统环境搭建#xff08;七#xff09;——Ubuntu安装MySQL8.0 文章目录 Ubuntu系统环境搭建#xff08;七#xff09;——Ubuntu安装MySQL8.01、安装1.1、下载1.2、解压安装 2、配置工作2.1、基本设置2.1.1、文件夹重命名…ubuntu环境搭建专栏点击跳转
Ubuntu系统环境搭建七——Ubuntu安装MySQL8.0 文章目录 Ubuntu系统环境搭建七——Ubuntu安装MySQL8.01、安装1.1、下载1.2、解压安装 2、配置工作2.1、基本设置2.1.1、文件夹重命名2.1.2、PATH 变量2.1.3、确认安装 2.2、创建用户组、用户2.3、数据目录 3、初始化 启动3.1、配置文件3.2、初始化3.3、启动 MySQL3.3.1、启动服务3.3.2、登录 3.4、修改密码 4、远程连接 MySQL4.1、创建远程连接用户 1、安装
1.1、下载
cd /usr/local/在 /usr/local/ 下执行下载资源包
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz1.2、解压安装
tar -Jxvf mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz2、配置工作
2.1、基本设置
2.1.1、文件夹重命名
重命名 MySQL 文件夹
mv mysql-8.0.32-linux-glibc2.12-x86_64 mysql82.1.2、PATH 变量
vim /etc/profile在最下面追加
export PATH$PATH:/usr/local/mysql8/bin重载环境变量
source /etc/profile2.1.3、确认安装
查看版本
mysql --version有报错就先执行下面的指令
sudo apt-get install libtinfo5确定 MySQL 安装成功后可删除压缩包。
rm -rf mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz2.2、创建用户组、用户 注需要进入 /usr/local 创建用户组groupadd
groupadd mysql创建用户useradd-r 创建系统用户-g 指定用户组
useradd -r -g mysql mysql2.3、数据目录
创建目录
mkdir -p /data/mysql8_data赋予权限
更改属主和数组
chown -R mysql:mysql /data/mysql8_data更改模式 只有具有 root 权限的用户和 mysql 用户可以读取、写入和执行
chmod -R 700 /data/mysql8_data3、初始化 启动
3.1、配置文件
在 /usr/local/etc/ 下创建 my.cnf 配置文件用于初始化 MySQL 数据库
vim /usr/local/etc/my.cnf文件内容如下。
[mysql]
# 默认字符集
default-character-setutf8mb4
[client]
# 客户端使用的端口号
port3306
# 客户端连接的 socket 路径
socket/tmp/mysql.sock
[mysqld]
# 服务端使用的端口号
port3306
# 服务器 ID
server-id3306
# MySQL 运行用户
usermysql
# 日志时间系统时间
log_timestampsSYSTEM
# 默认时区东八区
default-time_zone8:00
# 服务器连接的 socket 路径
socket/tmp/mysql.sock
# MySQL 安装目录
basedir/usr/local/mysql8
# 数据存放目录
datadir/data/mysql8_data/mysql
# 开启二进制日志功能
log-bin/data/mysql8_data/mysql/mysql-bin
# InnoDB 数据文件存放目录
innodb_data_home_dir/data/mysql8_data/mysql
# InnoDB 日志文件存放目录
innodb_log_group_home_dir/data/mysql8_data/mysql
# MySQL 错误日志文件路径
log-error/data/mysql8_data/mysql/mysql.log
# 存放 MySQL 进程 ID 的文件路径
pid-file/data/mysql8_data/mysql/mysql.pid
# 表名大小写不敏感
lower_case_table_names1
# 服务端字符集
character-set-serverutf8mb4
# 自动提交所有事务
autocommit1
# 跳过排它锁定
skip-external-locking
# 键缓存大小
key_buffer_size256M
# 允许的最大数据包大小
max_allowed_packet1M
# 表缓存
table_open_cache1024
# 排序缓存大小
sort_buffer_size4M
# 网络缓冲区长度
net_buffer_length8K
# 读取缓冲区大小
read_buffer_size4M
# 随机读取缓冲区大小
read_rnd_buffer_size512K
# MyISAM 排序缓冲区大小
myisam_sort_buffer_size64M
# 线程缓存大小
thread_cache_size128
# 临时表大小
tmp_table_size128M
# 启用显式默认时间戳
explicit_defaults_for_timestamptrue
# 最大连接数
max_connections500
# 连接错误最大数量
max_connect_errors100
# 打开文件限制
open_files_limit65535
# 二进制日志格式
binlog_formatmixed
# 二进制日志过期时间秒
binlog_expire_logs_seconds864000
# 创建表时使用的默认存储引擎
default_storage_engineInnoDB
# InnoDB 数据文件路径设置
innodb_data_file_pathibdata1:10M:autoextend
# InnoDB 缓冲池大小
innodb_buffer_pool_size1024M
# InnoDB 日志文件大小
innodb_log_file_size256M
# InnoDB 日志缓冲区大小
innodb_log_buffer_size8M
# InnoDB 每次提交时刷新日志
innodb_flush_log_at_trx_commit1
# InnoDB 加锁等待超时时间秒
innodb_lock_wait_timeout50
# 事务隔离级别为读已提交
transaction-isolationREAD-COMMITTED
[mysqldump]
# 快速导出数据
quick
# 允许的最大数据包大小
max_allowed_packet16M
[myisamchk]
# 键缓存大小
key_buffer_size256M
# 排序缓冲区大小
sort_buffer_size4M
# 读取缓冲区大小
read_buffer2M
# 写入缓冲区大小
write_buffer2M
[mysqlhotcopy]
# 交互式超时时间
interactive-timeout3.2、初始化 需要进入 /usr/local/mysql8/bin若添加了 PATH 变量可忽略。 初始化命令注意文件夹名称。
--defaults-file指定配置文件要放在–initialize 前面--user 指定用户--basedir指定安装目录--datadir指定初始化数据目录--intialize-insecure初始化无密码否则生成随机密码
mysqld --defaults-file/usr/local/etc/my.cnf --basedir/usr/local/mysql8 --datadir/data/mysql8_data/mysql --usermysql --initialize-insecure3.3、启动 MySQL 查看 MySQL 的 /bin 下是否包含 mysqld_safe用于后台安全启动 MySQL 3.3.1、启动服务
安全后台启动 MySQL
# 完整命令
/usr/local/mysql8/bin/mysqld_safe --defaults-file/usr/local/etc/my.cnf
# 若添加了PATH变量可省略如下
mysqld_safe --defaults-file/usr/local/etc/my.cnf 确认启动第二条即 MySQL 服务。
ps -ef|grep mysql3.3.2、登录
mysql -u root --skip-password3.4、修改密码
修改密码
ALTER USER rootlocalhost IDENTIFIED WITH mysql_native_password BY 新密码;设置密码永不过期本地
alter user rootlocalhost password expire never;刷新权限
FLUSH PRIVILEGES;4、远程连接 MySQL
4.1、创建远程连接用户 选择 mysql 数据库查看当前用户 USE mysql;host 字段表示可访问当前数据库的主机目前仅本地可访问。 SELECT user,host,plugin,authentication_string FROM user;创建用户
CREATE user root%;设置首次密码
ALTER USER root% IDENTIFIED WITH mysql_native_password BY 密码;授权用户所有权限
GRANT ALL PRIVILEGES ON *.* TO root%;设置密码永不过期远程
alter user root% password expire never;刷新权限
FLUSH PRIVILEGES;