Unix/Linux下使用Generic Binaries安装MySQL

本文详细介绍了如何使用Oracle提供的MySQL二进制发行版在多种平台上进行安装,包括解压压缩包、设置目录权限、使用mysql_install_db脚本安装、配置及启动MySQL等关键步骤。

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">Oracle provides a set of binarydistributions of MySQL. These include binary distributions in the form ofcompressed tar files (files with a .tar.gz extension) for a number ofplatforms, as well as binaries in platform-specific package formats forselected platforms.</span>


Warning

If you have previously installed MySQLusing your operating system native package management system, such as yum orapt-get, you may experience problems installing using a native binary. Makesure your previous MySQL previous installation has been removed entirely (usingyour package management system), and that any additional files, such as oldversions of your data files, have also been removed. You should also check theexistence of configuration files such as /etc/my.cnf or the /etc/mysqldirectory have been deleted. 

On Unix, to install a compressed tar filebinary distribution, unpack it at the installation location you choose(typically /usr/local/mysql). This creates the directories shown in thefollowing table.



To install and use a MySQL binarydistribution, the basic command sequence looks like this: 

shell> groupadd mysql
shell> useradd -r -g mysql mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
# Next command is optional
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server

安装步骤:

1. 进入安装目录,设置相关目录属主




2. 使用scripts目录中的mysql_install_db脚本安装



3. 重新设置相关目录权限



4. 将MySQL配置文件my.cnf拷贝到/etc目录下



5. 启动MySQL



参考:

http://dev.mysql.com/doc/refman/5.1/en/binary-installation.html

<think>好的,用户现在想在Linux Ubuntu系统下安装MySQL,之前他们已经问过如何彻底卸载MySQL,现在需要安装指南。让我先回顾一下之前的对话和提供的引用,确保正确理解需求。 首先,用户提供的引用中有多个关于Ubuntu安装MySQL的信息,包括编译安装、二进制包安装、LEMP堆栈配置、MySQL 8.0安装步骤以及配置文件修改。引用[2]提到使用Generic Binaries安装,并且需要处理版本升级的问题,而引用[4]是关于MySQL 8.0的安装步骤。用户现在需要的是正确安装MySQL的方法,可能需要综合这些信息。 用户之前的问题是关于卸载MySQL,现在转向安装,可能需要考虑版本选择和安装后的配置。根据引用[4],安装MySQL 8.0时可能需要设置root密码,并且检查服务状态。而引用[2]提到使用Generic Binaries安装5.7.44版本,因为官方deb包可能不支持更高版本。用户可能需要选择适合的版本,尤其是如果他们有特定版本需求的话。 此外,引用[3]中提到了检查用户身份验证方法,这可能涉及到安装后的安全设置,比如确保root用户使用密码登录而不是auth_socket。引用[5]涉及配置文件的修改,特别是字符集设置,这对中文用户可能很重要。 用户可能的需求包括: 1. 安装最新稳定版本的MySQL,或者特定版本(如5.7或8.0)。 2. 安装过程中的依赖解决和配置。 3. 安全设置,包括root密码和远程访问权限。 4. 字符集配置,避免乱码问题。 5. 验证安装是否成功,服务是否正常运行。 需要确保回答覆盖这些方面,并根据引用中的信息提供准确步骤。例如,使用APT安装MySQL 8.0(如引用[4]),或者手动安装Generic Binaries(如引用[2]),并处理可能的版本问题。同时,配置文件和用户权限设置(引用[3]和[5])也很重要。 另外,用户可能对安装后的基本操作和常见问题解决感兴趣,比如如何启动服务、设置开机启动、修改密码等。需要确保步骤清晰,避免用户遇到之前卸载残留导致的问题,比如服务冲突或端口占用,这在之前的卸载指南中已经提到过。 最后,生成相关问题,帮助用户进一步了解安装后的步骤或可能遇到的问题,如版本升级、配置优化、权限管理等。</think>### 如何在Linux Ubuntu系统上正确安装MySQL --- #### 一、选择安装方式(根据需求) 1. **APT官方仓库安装(推荐MySQL 8.0)** ```bash # 更新软件源并安装 sudo apt update sudo apt install mysql-server ``` - 自动处理依赖项和配置文件 - 默认安装最新稳定版(如MySQL 8.0) - 安装过程中可能提示设置root密码(Ubuntu 22.04后默认使用auth_socket插件)[^4] 2. **手动安装Generic Binaries(适用于特定版本需求,如MySQL 5.7.44)** ```bash # 下载官方二进制包 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz tar -zxvf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz sudo mv mysql-5.7.44-linux-glibc2.12-x86_64 /usr/local/mysql # 初始化系统用户与权限 sudo groupadd mysql sudo useradd -r -g mysql -s /bin/false mysql sudo chown -R mysql:mysql /usr/local/mysql # 初始化数据目录 sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql sudo /usr/local/mysql/bin/mysql_ssl_rsa_setup ``` - 适合需要精确控制版本的场景[^2] --- #### 二、关键配置步骤 1. **启动服务与设置开机自启** ```bash # APT安装方式 sudo systemctl start mysql sudo systemctl enable mysql # 手动安装方式需复制启动脚本 sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql.server sudo update-rc.d mysql.server defaults ``` 2. **安全加固(必做)** ```bash sudo mysql_secure_installation ``` - 根据提示操作: - 设置root密码(若未在安装时设置) - 移除匿名用户 - 禁止远程root登录 - 删除测试数据库 3. **身份验证方式修正(针对auth_socket问题)** ```sql ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码'; FLUSH PRIVILEGES; ``` - 解决Ubuntu新版本默认使用socket认证导致客户端无法登录的问题[^3] 4. **字符集配置(预防中文乱码)** ```bash sudo vim /etc/mysql/my.cnf ``` 添加以下内容: ```ini [mysqld] character-set-server=utf8mb4 [client] default-character-set=utf8mb4 [mysql] default-character-set=utf8mb4 ``` - 修改后重启服务:`sudo systemctl restart mysql`[^5] --- #### 三、验证安装 1. **检查服务状态** ```bash sudo systemctl status mysql ``` - 正常状态应显示`active (running)` 2. **登录测试** ```bash mysql -u root -p ``` - 输入密码后进入MySQL命令行即表示成功 3. **查看版本信息** ```sql SELECT VERSION(); ``` --- #### 四、高级配置(按需选择) 1. **远程访问权限** ```sql CREATE USER '用户名'@'%' IDENTIFIED BY '密码'; GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%'; FLUSH PRIVILEGES; ``` - 需同时修改`/etc/mysql/mysql.conf.d/mysqld.cnf`中的`bind-address = 0.0.0.0` 2. **防火墙开放端口** ```bash sudo ufw allow 3306/tcp ``` --- ### 相关问题 1. 如何在Ubuntu上实现MySQL多版本共存? 2. 使用APT安装与手动编译安装MySQL有何性能差异? 3. 如何通过日志排查MySQL启动失败问题? [^1]: 编译安装时的用户权限控制与安全初始化流程 [^2]: Generic Binaries版本升级的依赖管理与冲突解决 [^3]: MySQL 8.0身份验证插件变更对客户端连接的影响 [^4]: systemd服务管理在MySQL运维中的典型应用 [^5]: 字符集配置对数据库存储和查询一致性的作用
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值