确定度 發表於 2025-7-8 13:22:00

银河麒麟系统V10安装mysql5.7

<p>1、cat&nbsp; /proc/version查看系统版本</p>
<p><img src="https://img2024.cnblogs.com/blog/2338621/202410/2338621-20241029155320759-1134536786.png"></p>
<p>2、官网(https://dev.mysql.com/downloads/mysql/)下载mysql</p>
<p><img alt="" class="lazyloaded medium-zoom-image lazyload" loading="lazy" src="https://img2024.cnblogs.com/blog/2338621/202410/2338621-20241029155411098-1567921149.png"></p>
<p>&nbsp;3、在服务器直接下载压缩包</p>
<div class="cnblogs_code">
<pre>wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.18-1.el7.x86_64.rpm-bundle.tar</pre>
</div>
<p>4、创建upload目录存储压缩包</p>
<p>5、cd /upload/,解压缩到/usr/local目录下</p>
<div class="cnblogs_code">
<pre>tar zxvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz -C /usr/local</pre>
</div>
<p>6、cd /usr/local,文件夹重命名为mysql</p>
<div class="cnblogs_code">
<pre>mv mysql-5.7.18-linux-glibc2.5-x86_64/ mysql</pre>
</div>
<p>7、创建mysql用户组和用户</p>
<div class="cnblogs_code">
<pre># 创建MySQL用户组
groupadd mysql
# 添加MySQL用户并添加到MySQL用户组
useradd -r -g mysql mysql</pre>
</div>
<p><img alt="" class="ls-is-cached lazyloaded medium-zoom-image lazyload" loading="lazy" src="https://img2024.cnblogs.com/blog/2338621/202410/2338621-20241029161102621-276716232.png"></p>
<p>&nbsp;8、创建mysql存储数据目录</p>
<p><img alt="" class="ls-is-cached lazyloaded medium-zoom-image lazyload" loading="lazy" src="https://img2024.cnblogs.com/blog/2338621/202410/2338621-20241029161211105-694654065.png"></p>
<p>&nbsp;9、赋予权限</p>
<div class="cnblogs_code">
<pre>chown mysql:mysql -R /usr/local/mysql/data/</pre>
</div>
<p>10、配置my.cnf文件</p>
<div class="cnblogs_code">
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img alt="复制代码" data-src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
<pre>
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password

# 设置mysql客户端默认字符集
default-character-set=utf8mb4

# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4</pre>
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
</div>
<p>11、cd /usr/local/mysql/bin&nbsp; 初始化mysql</p>
<p>注意:</p>
<ul>
<li>--defaults-file:默认配置文件地址</li>
<li>--datadir:是刚刚创建的data数据目录</li>
<li>--basedir:是MySQL安装目录</li>
<li>--user:刚刚创建的mysql用户</li>
</ul>
<div class="cnblogs_code">
<pre>./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --initialize</pre>
</div>
<p><img src="https://img2024.cnblogs.com/blog/2338621/202410/2338621-20241029161751863-1952276588.png"></p>
<p>12、启动mysql服务</p>
<div class="cnblogs_code">
<pre>/usr/local/mysql/support-files/mysql.server start</pre>
</div>
<p><img alt="" class="ls-is-cached lazyloaded medium-zoom-image lazyload" loading="lazy" src="https://img2024.cnblogs.com/blog/2338621/202410/2338621-20241029161850278-1806640956.png"></p>
<p>&nbsp;13、修改初始密码</p>
<div class="cnblogs_code">
<pre># 切换目录
cd /usr/local/mysql/bin
# 登录命令
./mysql -u root -p</pre>
</div>
<div class="cnblogs_code">
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img alt="复制代码" data-src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
<pre># 设置密码 password自己修改
SET PASSWORD = PASSWORD('password');
# 设置用户的访问密码用不过期
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
#刷新权限
FLUSH PRIVILEGES;</pre>
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
</div>
<p>14、防火墙放开3306</p>
<div class="cnblogs_code">
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
<pre># 开启端口3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重启防火墙
firewall-cmd --reload
# 查看已经开放的端口
firewall-cmd --list-ports</pre>
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
</div>
<p>15、设置开机自启动</p>
<div class="cnblogs_code">
<pre>ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

service mysql restart</pre>
</div>
<p>16、授权</p>
<div class="cnblogs_code">
<pre>chmod +x /etc/init.d/mysql</pre>
</div>
<p>17、添加服务</p>
<div class="cnblogs_code">
<pre>chkconfig --add mysql</pre>
</div>
<p>18、显示服务列表</p>
<div class="cnblogs_code">
<pre>chkconfig --list</pre>
</div>
<p><img src="https://img2024.cnblogs.com/blog/2338621/202410/2338621-20241029162556368-2032253590.png"></p>
<p>如上图所示,如果是2,3,4,5 都是开启的话则成功。<br>如果不是,可运行以下命令开启:</p>
<div class="cnblogs_code">
<pre>chkconfig --level 2345 mysql on</pre>
</div>
<p>19、重启服务器,查看mysql进程</p>
<div class="cnblogs_code">
<pre>reboot</pre>
</div>
<div class="cnblogs_code">
<pre>ps -aux | grep mysql</pre>
</div>
<p>注意:出现1130错误代表不允许远程登录异常</p>
<div class="cnblogs_code">
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img alt="复制代码" data-src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
<pre># 访问mysql库
use mysql
# 修改root用户能在任何host访问
update user set host = '%' where user = 'root';
# 刷新
FLUSH PRIVILEGES;</pre>
<div class="cnblogs_code_toolbar"><span class="cnblogs_code_copy"><img src="https://assets.cnblogs.com/images/copycode.gif"></span></div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">&nbsp;</div>
<div class="cnblogs_code_toolbar">
<p class="marklang-paragraph">麒麟系统安装 MySQL 5.7 需根据系统架构(x86_64 或 ARM aarch64)选择对应安装包,并严格遵循以下步骤:</p>
<h3>🔧 一、安装前准备</h3>
<ol>
<li>‌卸载 MariaDB 和相关组件‌
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash">rpm -qa | grep mariadb <span class="hljs-comment"># 检查已安装包 rpm -e --nodeps mariadb-libs mariadb-server <span class="hljs-comment"># 强制卸载 :ml-citation{ref="6,8" data="citationList"} yum remove mysql* -y <span class="hljs-comment"># 清理残留 MySQL 包 :ml-citation{ref="2,6" data="citationList"} </span></span></span></code></div>
</div>
</li>
<li>‌安装依赖库‌
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash">yum install -y gcc gcc-c++ cmake ncurses-devel bison openssl-devel libaio* libncurses* :ml-citation{ref=<span class="hljs-string">"2,7" data=<span class="hljs-string">"citationList"} </span></span></code></div>
</div>
</li>
<li>‌创建 MySQL 用户组和用户‌
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash">groupadd mysql useradd -r -g mysql -s /sbin/nologin -M mysql :ml-citation{ref=<span class="hljs-string">"3,4" data=<span class="hljs-string">"citationList"} </span></span></code></div>
</div>
</li>
</ol>
<h3>📦 二、安装与配置</h3>
<ol>
<li>
<p class="marklang-paragraph">‌下载并解压安装包‌</p>
<ul>
<li>‌ARM 架构‌:从华为镜像站下载(如&nbsp;<code>mysql-5.7.27-aarch64.tar.gz</code>)<span><span><span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">9<span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">10</span></span></span></span></span></span></span></span>
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash">wget https://obs.cn-north-4.myhuaweicloud.com/obs-mirror-ftp4/database/mysql-5.7.27-aarch64.tar.gz </code></div>
</div>
</li>
<li>‌x86_64 架构‌:从&nbsp;MySQL 官网&nbsp;下载&nbsp;<code>mysql-5.7.xx-linux-glibc2.12-x86_64.tar.gz</code>&nbsp;<span><span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">1<span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">4</span></span></span></span></span></span></span></li>
</ul>
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash">tar -zxvf mysql-5.7.*.tar.gz -C /usr/local <span class="hljs-built_in">mv /usr/local/mysql-5.7.* /usr/local/mysql :ml-citation{ref=<span class="hljs-string">"3,4" data=<span class="hljs-string">"citationList"} </span></span></span></code></div>
</div>
</li>
<li>
<p class="marklang-paragraph">‌配置目录权限‌</p>
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash"><span class="hljs-built_in">mkdir -p /usr/local/mysql/data <span class="hljs-comment"># 创建数据目录 <span class="hljs-built_in">chown -R mysql:mysql /usr/local/mysql <span class="hljs-comment"># 赋权 :ml-citation{ref="3,4" data="citationList"} </span></span></span></span></code></div>
</div>
</li>
<li>
<p class="marklang-paragraph">‌修改配置文件&nbsp;<code>/etc/my.cnf</code>‌</p>
<div class="code-header"><span>ini<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-ini"><span class="hljs-section"> <span class="hljs-attr">basedir=/usr/local/mysql <span class="hljs-attr">datadir=/usr/local/mysql/data <span class="hljs-attr">socket=/usr/local/mysql/data/mysql.sock <span class="hljs-attr">port=<span class="hljs-number">3306 <span class="hljs-attr">character-set-server=utf8mb4 <span class="hljs-section"> <span class="hljs-attr">default-character-set=utf8mb4 :ml-citation{ref=<span class="hljs-string">"3,4" data=<span class="hljs-string">"citationList"} </span></span></span></span></span></span></span></span></span></span></span></code></div>
</div>
</li>
</ol>
<h3>⚙️ 三、初始化与启动</h3>
<ol>
<li>‌初始化数据库‌
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash"><span class="hljs-built_in">cd /usr/local/mysql/bin ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data <span class="hljs-comment"># 记录输出的临时密码 :ml-citation{ref="3,8" data="citationList"} </span></span></code></div>
</div>
</li>
<li>‌启动 MySQL 服务‌
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash"><span class="hljs-built_in">cp support-files/mysql.server /etc/init.d/mysqld service mysqld start <span class="hljs-comment"># 或 systemctl start mysqld :ml-citation{ref="7,8" data="citationList"} </span></span></code></div>
</div>
</li>
</ol>
<h3>🔐 四、设置 root 密码及远程访问</h3>
<ol>
<li>‌登录并修改密码‌
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash">mysql -uroot -p <span class="hljs-comment"># 输入初始化生成的临时密码 ALTER USER <span class="hljs-string">'root'@<span class="hljs-string">'localhost' IDENTIFIED BY <span class="hljs-string">'新密码'; :ml-citation{ref=<span class="hljs-string">"8" data=<span class="hljs-string">"citationList"} </span></span></span></span></span></span></code></div>
</div>
</li>
<li>‌开启远程访问(可选)‌
<div class="code-header"><span>sql<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-sql"><span class="hljs-keyword">GRANT <span class="hljs-keyword">ALL PRIVILEGES <span class="hljs-keyword">ON <span class="hljs-operator">*.<span class="hljs-operator">* <span class="hljs-keyword">TO <span class="hljs-string">'root'@<span class="hljs-string">'%' IDENTIFIED <span class="hljs-keyword">BY <span class="hljs-string">'密码' <span class="hljs-keyword">WITH <span class="hljs-keyword">GRANT OPTION; FLUSH PRIVILEGES; :ml<span class="hljs-operator">-citation{<span class="hljs-keyword">ref<span class="hljs-operator">="8" data<span class="hljs-operator">="citationList"} </span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></code></div>
</div>
</li>
</ol>
<h3>⚠️ 常见问题处理</h3>
<ul>
<li>‌内存溢出‌:编辑&nbsp;<code>/etc/my.cnf</code>&nbsp;添加&nbsp;<code>performance_schema=off</code>&nbsp;<span><span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">8。</span></span></span></span></li>
<li>‌SSL 错误‌:执行&nbsp;<code>bin/mysql_ssl_rsa_setup</code>&nbsp;生成证书&nbsp;<span><span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">7。</span></span></span></span></li>
<li>‌防火墙‌:开放 3306 端口:
<div class="code-header"><span>bash<span class="cosd-markdown-code-copy cos-link">Copy Code</span></span></div>
<div class="code-wrapper">
<div class="code-left">&nbsp;</div>
<div class="code-right"><code class="hljs language-bash">firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload :ml-citation{ref=<span class="hljs-string">"9" data=<span class="hljs-string">"citationList"} </span></span></code></div>
</div>
</li>
</ul>
<blockquote>
<p class="marklang-paragraph">‌注意‌:ARM 架构必须使用专用安装包,x86 架构需确认系统位数(<code>getconf LONG_BIT</code>)匹配&nbsp;<span><span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">4<span><span class="cos-tooltip cosd-citation"><span class="cosd-citation-citationId">5。严格遵循权限和路径配置可避免 80% 的安装失败问题。</span></span></span></span></span></span></span></p>
</blockquote>
</div>
</div><br><br>
来源:https://www.cnblogs.com/lhxsoft/p/18972843
頁: [1]
查看完整版本: 银河麒麟系统V10安装mysql5.7