当前位置: 首页 > news >正文

百度快照举报网站威海企业网站建设

百度快照举报网站,威海企业网站建设,如何在网上申请注册公司,福州电子商务网站建设MySQL安装部署全攻略 一、安装前的准备工作 1.1 检查你的Linux系统 在开始安装之前,我们先来确认一下你的系统环境。打开终端,输入以下命令: # 查看系统版本 cat /etc/os-release# 查看内核版本 uname -a# 查看系统架构(32位还是6…

MySQL安装部署全攻略

一、安装前的准备工作

1.1 检查你的Linux系统

在开始安装之前,我们先来确认一下你的系统环境。打开终端,输入以下命令:

# 查看系统版本
cat /etc/os-release# 查看内核版本
uname -a# 查看系统架构(32位还是64位)
uname -m

为什么需要检查这些?

  • 不同的Linux发行版使用不同的包管理器
  • 确保你的系统支持MySQL 8.0+
  • 64位系统性能更好,推荐使用

1.2 卸载已有的MySQL(如果存在)

如果你之前安装过MySQL,建议先卸载干净,避免冲突:

# 检查是否已安装MySQL
rpm -qa | grep mysql    # CentOS/RHEL系统
dpkg -l | grep mysql    # Ubuntu/Debian系统# 停止MySQL服务(如果正在运行)
sudo systemctl stop mysql
sudo systemctl disable mysql# 卸载MySQL相关包
# CentOS/RHEL系统
sudo yum remove mysql-server mysql-client mysql-common
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/my.cnf# Ubuntu/Debian系统
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/mysql

1.3 更新系统包

安装前先更新一下系统包,这是个好习惯:

# Ubuntu/Debian系统
sudo apt update
sudo apt upgrade -y# CentOS/RHEL系统
sudo yum update -y
# 或者使用dnf(CentOS 8+)
sudo dnf update -y

1.4 安装必要的依赖

MySQL需要一些基础依赖包,我们先安装它们:

# Ubuntu/Debian系统
sudo apt install -y wget curl vim net-tools# CentOS/RHEL系统
sudo yum install -y wget curl vim net-tools

二、使用包管理器安装MySQL(推荐新手)

2.1 Ubuntu/Debian系统使用APT安装

这是最简单、最推荐的方式,特别适合新手朋友!

2.1.1 添加MySQL官方仓库
# 下载MySQL APT配置包
wget https://dev.mysql.com/get/mysql-apt-config_0.8.29-1_all.deb# 安装配置包
sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb

在安装过程中,你会看到一个配置界面:

  • 选择"OK"继续
  • 选择"MySQL Server & Cluster"
  • 选择"mysql-8.4"(或最新版本)
  • 选择"OK"完成配置
2.1.2 更新包列表并安装
# 更新包列表
sudo apt update# 安装MySQL服务器
sudo apt install -y mysql-server# 安装MySQL客户端(可选)
sudo apt install -y mysql-client
2.1.3 启动MySQL服务
# 启动MySQL服务
sudo systemctl start mysql# 设置开机自启
sudo systemctl enable mysql# 查看MySQL状态
sudo systemctl status mysql

如果看到绿色的"active (running)",恭喜你,MySQL已经成功启动了!

2.2 CentOS/RHEL系统使用YUM安装

2.2.1 添加MySQL官方YUM仓库
# 下载MySQL YUM仓库配置包
wget https://dev.mysql.com/get/mysql84-community-release-el7-11.noarch.rpm# 安装仓库配置包
sudo rpm -ivh mysql84-community-release-el7-11.noarch.rpm
2.2.2 安装MySQL服务器
# 安装MySQL服务器
sudo yum install -y mysql-community-server# 启动MySQL服务
sudo systemctl start mysqld# 设置开机自启
sudo systemctl enable mysqld# 查看MySQL状态
sudo systemctl status mysqld

2.3 初始安全配置

无论你用哪种方式安装,都需要进行安全配置:

# 运行安全配置脚本
sudo mysql_secure_installation

按照提示进行配置:

  1. 设置密码验证策略:建议选择中等强度(1)
  2. 设置root密码:输入一个强密码并记住
  3. 移除匿名用户:选择Y
  4. 禁止root远程登录:选择Y(安全考虑)
  5. 移除测试数据库:选择Y
  6. 重新加载权限表:选择Y

2.4 验证安装

让我们验证一下MySQL是否安装成功:

# 登录MySQL
sudo mysql -u root -p# 输入你设置的密码# 查看MySQL版本
SELECT VERSION();# 查看所有数据库
SHOW DATABASES;# 退出MySQL
EXIT;

如果一切正常,你会看到MySQL版本信息和数据库列表!

三、手动编译安装MySQL(适合进阶用户)

如果你想要更多控制权,或者需要特定版本的MySQL,可以尝试手动编译安装。这个方法稍微复杂一些,但能让你更深入理解MySQL的组成。

3.1 安装编译依赖

# Ubuntu/Debian系统
sudo apt install -y build-essential cmake bison libncurses5-dev libssl-dev# CentOS/RHEL系统
sudo yum install -y gcc gcc-c++ cmake bison ncurses-devel openssl-devel

3.2 下载MySQL源码

# 创建工作目录
mkdir -p ~/mysql-build
cd ~/mysql-build# 下载MySQL源码(以8.4.0为例)
wget https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.0.tar.gz# 解压源码
tar -zxvf mysql-8.4.0.tar.gz
cd mysql-8.4.0

3.3 创建MySQL用户和组

# 创建MySQL用户组
sudo groupadd mysql# 创建MySQL用户
sudo useradd -r -g mysql -s /bin/false mysql

3.4 编译安装MySQL

3.4.1 配置编译选项
# 创建编译目录
mkdir build && cd build# 运行cmake配置
cmake .. \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DWITH_BOOST=/usr/local/boost \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_unicode_ci \
-DENABLED_LOCAL_INFILE=1 \
-DENABLE_DTRACE=0 \
-DFORCE_INSOURCE_BUILD=1

配置选项说明:

  • DCMAKE_INSTALL_PREFIX:安装目录
  • DMYSQL_DATADIR:数据目录
  • DSYSCONFDIR:配置文件目录
  • DWITH_INNOBASE_STORAGE_ENGINE:启用InnoDB引擎
  • DDEFAULT_CHARSET:默认字符集
3.4.2 编译和安装
# 编译(这个过程会比较长,耐心等待)
make -j$(nproc)# 安装
sudo make install

注意:编译过程可能需要30分钟到2小时,取决于你的电脑性能。可以喝杯咖啡休息一下!

3.5 初始化MySQL

# 创建数据目录
sudo mkdir -p /usr/local/mysql/data
sudo chown -R mysql:mysql /usr/local/mysql# 初始化MySQL
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

重要:初始化完成后,会生成一个临时root密码,请记下这个密码!

3.6 配置MySQL

3.6.1 创建配置文件
# 创建MySQL配置文件
sudo vim /etc/my.cnf

添加以下内容:

[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
user=mysql# 字符集设置
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci# 存储引擎
default-storage-engine=InnoDB# 端口
port=3306# 日志设置
log-error=/usr/local/mysql/data/error.log
pid-file=/usr/local/mysql/data/mysql.pid# 其他设置
max_connections=200
innodb_buffer_pool_size=1G[client]
socket=/tmp/mysql.sock
default-character-set=utf8mb4[mysql]
default-character-set=utf8mb4
3.6.2 创建系统服务文件
# 创建systemd服务文件
sudo vim /etc/systemd/system/mysql.service

添加以下内容:

[Unit]
Description=MySQL Server
After=network.target[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
PIDFile=/usr/local/mysql/data/mysql.pid
Restart=on-failure
RestartSec=10
PrivateTmp=true[Install]
WantedBy=multi-user.target

3.7 启动MySQL

# 重新加载systemd
sudo systemctl daemon-reload# 启动MySQL
sudo systemctl start mysql# 设置开机自启
sudo systemctl enable mysql# 查看状态
sudo systemctl status mysql

3.8 修改root密码

# 登录MySQL(使用临时密码)
/usr/local/mysql/bin/mysql -u root -p# 修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';# 刷新权限
FLUSH PRIVILEGES;# 退出
EXIT;

四、安装验证和基础测试

4.1 验证MySQL服务

# 检查MySQL进程
ps aux | grep mysql# 检查端口监听
netstat -tlnp | grep 3306# 检查MySQL日志
tail -f /var/log/mysql/error.log    # 包管理安装
tail -f /usr/local/mysql/data/error.log  # 手动编译安装

4.2 创建测试数据库

# 登录MySQL
mysql -u root -p# 创建测试数据库
CREATE DATABASE test_db;# 使用测试数据库
USE test_db;# 创建测试表
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY,username VARCHAR(50) NOT NULL,email VARCHAR(100),created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);# 插入测试数据
INSERT INTO users (username, email) VALUES ('test_user', 'test@example.com');# 查询数据
SELECT * FROM users;# 退出
EXIT;

4.3 测试远程连接(可选)

如果你需要远程连接MySQL,需要进行额外配置:

# 登录MySQL
mysql -u root -p# 创建远程用户
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'remote_password';# 授权
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%';# 刷新权限
FLUSH PRIVILEGES;# 退出
EXIT;# 配置防火墙(如果需要)
sudo ufw allow 3306    # Ubuntu
sudo firewall-cmd --permanent --add-port=3306/tcp  # CentOS
sudo firewall-cmd --reload  # CentOS

五、常见问题解决

5.1 安装过程中遇到的问题

5.1.1 依赖包缺失

问题configure: error: No curses/termcap library found

解决

# Ubuntu/Debian
sudo apt install libncurses5-dev# CentOS/RHEL
sudo yum install ncurses-devel
5.1.2 编译错误

问题:编译过程中出现各种错误

解决

  1. 确保所有依赖都已安装
  2. 检查磁盘空间是否充足(至少需要5GB)
  3. 查看编译日志,根据具体错误解决

5.2 启动问题

5.2.1 MySQL无法启动

问题Job for mysql.service failed because the control process exited with error code

解决

# 查看错误日志
sudo journalctl -u mysql -n 50# 或者查看MySQL错误日志
tail -f /var/log/mysql/error.log# 常见原因:
# 1. 权限问题
sudo chown -R mysql:mysql /var/lib/mysql# 2. 端口被占用
sudo netstat -tlnp | grep 3306
sudo kill -9 进程ID# 3. 配置文件错误
sudo mysql --help --verbose | grep "Default options"
5.2.2 内存不足

问题:在内存较小的服务器上,MySQL可能无法启动

解决
修改配置文件,减少内存使用:

[mysqld]
innodb_buffer_pool_size = 256M  # 减少到256M或更小
max_connections = 50

5.3 连接问题

5.3.1 Access denied

问题ERROR 1045 (28000): Access denied for user 'root'@'localhost'

解决

# 停止MySQL服务
sudo systemctl stop mysql# 跳过权限表启动
sudo mysqld_safe --skip-grant-tables &# 新终端登录
mysql -u root# 重置密码
UPDATE mysql.user SET authentication_string=PASSWORD('新密码') WHERE User='root';
FLUSH PRIVILEGES;
EXIT;# 重启MySQL
sudo systemctl restart mysql
5.3.2 Can’t connect to MySQL server

问题ERROR 2002 (HY000): Can't connect to local MySQL server

解决

# 检查MySQL服务状态
sudo systemctl status mysql# 检查socket文件
ls -la /var/run/mysqld/mysqld.sock
ls -la /tmp/mysql.sock# 如果socket文件不存在,启动MySQL
sudo systemctl start mysql
http://www.dtcms.com/a/552721.html

相关文章:

  • 16.React性能优化SCU
  • Linux系统C++开发环境搭建工具(三)—— brpc使用指南
  • 《静态库与动态库:从编译原理到实战调用,一篇文章讲透》
  • 标签绑定货物信息误删处理
  • 划时代的AI Agent qwen的回答和思考
  • Rust中泛型函数实现不同类型数据的比较
  • 19. React的高阶组件
  • 中小企业建站服务外贸建站模板免费
  • 网站域名多少钱一年wordpress 发布 工具
  • 个人备案网站可以做淘宝客吗codex.wordpress.org
  • 做网络推广自己建网站建设局局长权力大吗
  • 外贸网站建设需求无锡做网站设计
  • 泰安网站建设策划方案wordpress 评论模版
  • 论坛网站用的虚拟主机做网站需要先学什么
  • 佛山网站推广seo定制网站开发流程图
  • 慈溪市住房和城乡建设局网站营销型网站建设需要懂什么软件
  • 参考网是正规网站吗平面设计大师
  • 网站策划书wordpress群
  • 查看网站开发平台苏州最新情况最新消息今天
  • 攀枝花网站建设兼职wap网站乱码
  • 开封景区网站建设项目方案婚纱摄影网站建站
  • 购物网站 购物车界面如何做访问网站提示输入用户名密码
  • 丹徒网站建设价格深圳网站建设软件定制公司
  • 有域名一定要买空间做网站安阳做网站的公司
  • 网站程序源码手机能制作网站吗
  • 简述电子政务系统网站建设的基本过程网站建设维护协议书
  • 苏州住房和城乡建设厅网站wordpress 定时显示
  • 机械公司网站模板爱网站
  • 全国精品课程建设网站cms源码下载
  • 邢台网站推广公司百度账户登录