数据库


04_CentOS8下离线安装MySQL8.x

<h3>1.安装前环境准备</h3> <h4>1.1 修改主机名及IP</h4> <pre><code class="language-bash">vim /etc/hosts vim /etc/hostname</code></pre> <h4>1.2 安装相关依赖包</h4> <pre><code class="language-bash">yum -y install libncurses*</code></pre> <h3>2.下载mysql离线包</h3> <p><a href="https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz">https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz</a></p> <h3>3.创建组和用户</h3> <pre><code class="language-bash">groupadd mysql useradd mysql -g mysql -d /usr/local/mysql -s /sbin/nologin</code></pre> <h3>4.上传并解压</h3> <pre><code class="language-bash">xz -dk mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar mv /usr/local/mysql-8.0.19-linux-glibc2.12-x86_64/* /usr/local/mysql rmdir /usr/local/mysql-8.0.19-linux-glibc2.12-x86_64</code></pre> <h3>5.创建目录</h3> <pre><code class="language-bash">mkdir -pv /data/mysql/{data,sock,log,pid} chown -R mysql:mysql /data/mysql</code></pre> <h3>6.安装</h3> <h4>6.1修改mysql服务</h4> <p>配置mysql的服务,将support-files下的mysql.server 复制到 /etc/init.d/下并取个名字</p> <pre><code class="language-bash">cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql vim /etc/init.d/mysqld 修改为: basedir=/usr/local/mysql datadir=/data/mysql/data</code></pre> <h4>6.2 在/etc/下新建my.cnf,内容如下:</h4> <pre><code class="language-bash">[client] port = 3306 socket = /tmp/mysql.sock [mysqld] port = 3306 basedir = /usr/local/mysql datadir = /data/mysql/data socket = /data/mysql/sock/mysql.sock pid-file = /data/mysql/pid/mysql.pid log-error = /data/mysql/log/mysql-error.log</code></pre> <h4>6.3.初始化数据库</h4> <p>切换到mysql的bin目录执行下面命令初始化数据库</p> <pre><code class="language-bash">cd /usr/local/mysql/bin ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data</code></pre> <p>注意: 执行完毕后会自动生成默认的密码在执行记录中,注意复制出来 cat /data/mysql/log/mysql-error.log</p> <h4>6.4.通命令启动mysql 服务</h4> <pre><code class="language-bash">/etc/init.d/mysql start</code></pre> <h4>6.5.配置mysql的环境变量</h4> <p>-bash: mysql: command not found. 为了Mysql 命令使用方便,配置一下mysql的环境变量</p> <pre><code class="language-bash">vim /etc/profile export MYSQL_HOME=/usr/local/mysql export PATH=$MYSQL_HOME/bin:$PATH</code></pre> <h4>6.6.使环境变量生效</h4> <pre><code class="language-bash">source /etc/profile</code></pre> <h4>6.7.登录报错解决</h4> <p><strong>报错001:</strong></p> <pre><code class="language-bash">mysql: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory</code></pre> <p><strong>解决办法:</strong></p> <pre><code class="language-bash">yum -y install libncurses*</code></pre> <p><strong>报错002:</strong></p> <pre><code class="language-bash">ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)</code></pre> <p><strong>解决办法:</strong></p> <pre><code class="language-bash">ln -s /data/mysql/sock/mysql.sock /tmp/mysql.sock</code></pre> <h4>6.8 登录</h4> <pre><code class="language-bash">mysql -uroot -p or mysql -p Enter password: 输入默认的临时密码 登录成功后,修改密码</code></pre> <h4>6.9 重置root密码</h4> <pre><code class="language-bash">mysql&gt; alter user 'root'@'localhost' identified by'root'; //修改密码 mysql&gt; flush privileges; //刷新权限表 备注:mysql8.0修改用户密码命令(新的修改方式)</code></pre>

页面列表

ITEM_HTML