官网下载MySQL8.0
创立存储目录,并解压文件
<code class="shell">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 # 不便前面拷贝门路
装置必要依赖
这一步能够省略,如果前面装置报错再回来装置也能够
yum -y libaio install ncurses-compat-libs
开始装置
<code class="SHELL">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
增加环境变量
<code class="shell">vim /etc/profile # 在文件开端增加以下命令 export PATH=/usr/local/mysql/bin:$PATH # :wq 保留并退出 source /etc/profile
重置mysql初始密码
必须进行明码的重置操作,不然不能应用
<code class="shell">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目录从新初始化
开启近程登录
<code class="shell">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 为数据库系统应用的字符集设定。
不管学习什么,倡议从官方网站寻找答案。