Ubuntu18.0.4 安装mysql


1 下载
wget -P /usr/local/effice/down https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz

2 切换到压缩包目录
# 进入压缩包目录
cd /usr/local/effice/down

#查看目录文件
ll

# 解压
tar -xvf mysql-8.0.30-linux-glibc2.12-x86_64.tar.xz

#移动文件到 /usr/local/effice
sudo mv mysql-8.0.30-linux-glibc2.12-x86_64 /usr/local/effice/mysql

3 # 创建数据存放目录
sudo mkdir -p /usr/local/effice/mysql/data


4 配置环境变量
echo 'export PATH=/usr/local/effice/mysql/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

#检查验证环境变量配置
mysql --version

5 创建数据库的用户、用户组
sudo groupadd mysqlgroup
sudo useradd -r -g mysqlgroup -s /bin/false mysqluser

# 授权
sudo chown -R mysqluser /usr/local/effice/mysql/ # 将文件的所有属性改为 mysqluser 用户
sudo chgrp -R mysqlgroup /usr/local/effice/mysql/ # 将组属性改为 mysqlgroup 组

# 初始化数据库(生成临时 root 密码,请务必记住该密码,后面启动mysql后需要用此密码登录后 重新修改root密码)
sudo bin/mysqld --initialize --user=mysqluser --basedir=/usr/local/effice/mysql --datadir=/usr/local/effice/mysql/data

6 修改/etc/my.cnf配置文件 和授权配置文件

sudo cp support-files/mysql.server /etc/init.d/mysql
sudo nano /etc/my.cnf

[client]
port=3306
socket=/tmp/mysql.sock
default-character-set=utf8mb4

[mysqld]
port=3306
server-id=3306
user=mysqluser
log_timestamps=SYSTEM
default-time_zone='+8:00'
socket=/tmp/mysql.sock
basedir=/usr/local/effice/mysql
datadir=/usr/local/effice/mysql/data
character_set_server=utf8mb4
skip-networking=0
table_open_cache=7600
bind-address =0.0.0.0
lower_case_table_names=1
sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
max_connections=10000
default-storage-engine=INNODB
innodb_buffer_pool_size = 75G
# 启用慢查询日志
slow_query_log = 1
# 慢查询日志文件位置
slow_query_log_file = /usr/local/effice/mysql/data/mysql-slow.log
# 定义慢查询阈值(秒)
long_query_time = 5
# 记录未使用索引的查询
log_queries_not_using_indexes = 1
# 记录管理语句(如ALTER TABLE, ANALYZE TABLE等)
log_slow_admin_statements = 1
# 记录慢速的从库复制查询
log_slow_slave_statements = 1


修改完配置文件后使用 Ctrl + 字母O,写入配置
然后 Enter 确认
再使用 Ctrl + 字母x 退出

配置了错误日志后,需要单独创建日志文件并授予文件的用户组及权限
sudo touch /usr/local/effice/mysql/data/mysql-slow.log
sudo chown mysqluser:mysqlgroup /usr/local/effice/mysql/data/mysql-slow.log
sudo chmod 640 /usr/local/effice/mysql/data/mysql-slow.log

 

# 安装后第一次启动mysql服务
sudo /etc/init.d/mysql start

设置root 及密码
mysql -u root -p
输入之前系统分配的临时root密码

alter user 'root'@'localhost' identified by 'effice@2023';
FLUSH PRIVILEGES;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
FLUSH PRIVILEGES;

创建数据库及普通用户及权限
create user 'sa'@'%' IDENTIFIED BY 'xiansumi@2023';
GRANT ALL ON *.* TO 'sa'@'%';
flush privileges;

//检查 SELECT User, Host, authentication_string, plugin FROM mysql.user;
//查看默认端口状态 登录 mysql -- SHOW GLOBAL VARIABLES LIKE 'port';

7 设置开机启动
sudo cp support-files/mysql.server /etc/init.d/mysql
sudo update-rc.d mysql defaults


8 启动服务

# 启动 sudo systemctl start mysql
# 停止 sudo systemctl stop mysql
# 查看状态 sudo systemctl status mysql
# 检查是否运行 ps aux | grep mysql

posted @ 2025-07-12 15:13  狼窝窝  阅读(18)  评论(0)    收藏  举报