登录
首页 >  数据库 >  MySQL

Centos安装MySQL8-学会这招全版本通吃

来源:SegmentFault

时间:2023-01-24 12:58:56 280浏览 收藏

有志者,事竟成!如果你在学习数据库,那么本文《Centos安装MySQL8-学会这招全版本通吃》,就很适合你!文章讲解的知识点主要包括MySQL、Linux、centos,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

2021-02-08🔥推荐

官网下载MySQL8.0

创建存储目录,并解压文件

mkdir -p /data
cd /data
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
tar xvf mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz
mv mysql-8.0.23-linux-glibc2.12-x86_64 mysql-8.0.23
cd mysql-8.0.23/
pwd
# 方便后面拷贝路径

安装必要依赖

这一步可以省略,如果后面安装报错再回来安装也可以

cd /usr/local
ln -s /data/mysql-8.0.23 mysql
cd mysql
mkdir mysql-files
# 给MySQL用户授权
chown mysql:mysql mysql-files
chmod 750 mysql-files
# 初始化,注意这里会输出root用户的默认密码,切记拷贝下来
# A temporary password is generated for root@localhost: XXX
bin/mysqld --initialize --user=mysql
bin/mysql_ssl_rsa_setup
# 启动应用
bin/mysqld_safe --user=mysql &
# 添加到开机启动
cp support-files/mysql.server /etc/init.d/mysql.server

添加环境变量

vim /etc/profile
# 在文件末尾添加以下命令
export PATH=/usr/local/mysql/bin:$PATH
# :wq 保存并退出
source /etc/profile

重置mysql初始密码

必须进行密码的重置操作,不然不能使用

mysql -u root -p
# 输入刚才记住的密码登录
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
mysql> flush privileges;
mysql> exit 
# 退出使用新密码登录,如果忘记密码,删除mysql目录下的data目录重新初始化

开启远程登录

mysql> use mysql;
# 从user表中列出所有user,host 此时显示的root 用户的host为 localhost
mysql> select user,host from user;
# 修改root用户的ip地址为%
mysql> update user set host='%' where user = 'root'
# 从user表中列出所有user,host 此时显示的root 用户的host为 %
# 刷新权限信息使更新生效 
mysql> flush privileges;
# 退出mysql
mysql> exit;

测试连接

这里推荐使用IDEA自带的

database
组件,后续再出篇文章详细介绍。

如果不能连接请检查服务器防火墙设置,如果防火墙关闭状态检查云服务器的安全组设置。

MYSQL编码

mysql> show variables like 'character%';
+--------------------------+------------------------------------+
| Variable_name            | Value                              |
+--------------------------+------------------------------------+
| character_set_client     | utf8mb4                            |
| character_set_connection | utf8mb4                            |
| character_set_database   | utf8mb4                            |
| character_set_filesystem | binary                             |
| character_set_results    | utf8mb4                            |
| character_set_server     | utf8mb4                            |
| character_set_system     | utf8                               |
| character_sets_dir       | /data/mysql-8.0.23/share/charsets/ |
+--------------------------+------------------------------------+
8 rows in set (0.02 sec)

从上图中可以看到 MySQL 有六处使用了字符集,分别为:client 、connection、database、results、server 、system。其中与服务器端相关:database、server、system(永远无法修改,就是utf-8);与客户端相关:connection、client、results 。

  • client 为客户端使用的字符集。
  • connection 为连接数据库的字符集设置类型,如果程序没有指明连接数据库使用的字符集类型则按照服务器端默认的字符集设置。
  • database 为数据库服务器中某个库使用的字符集设定,如果建库时没有指明,将使用服务器安装时指定的字符集设置。
  • results 为数据库给客户端返回时使用的字符集设定,如果没有指明,使用服务器默认的字符集。
  • server 为服务器安装时指定的默认字符集设定。
  • system 为数据库系统使用的字符集设定。

不论学习什么,建议从官方网站寻找答案。

一个程序猿的异常

终于介绍完啦!小伙伴们,这篇关于《Centos安装MySQL8-学会这招全版本通吃》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布数据库相关知识,快来关注吧!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表