liuyaoze
文档系统运维
文档系统更新指南
文档系统生产服务器标准操作程序
腾讯云cosfs工具
UPS配置教程
CentOS
Centos 7.6安装&开荒指南
离线更新CentOS 7.9内核
Centos 7.6软件编译指南
MySQL
MySQL8.x安装&开荒
MySQL备份
mysql索引的数据结构
MySQL WorkBench导出/入数据库操作指南
Python
使用nginx+uwsgi在centos7上部署Django
Python符号速查表
其他
Windows系统多网络下路由表的维护
NAS&exsi服务器相关
禁止Windows10专业版自动更新的方法
教育版软件申请&续期
系统应用&文件清单
人才公寓布置方案
高达基地限定
宝可梦朱紫属性克制关系
六级相关
六级正面话题写作总结
顺利通过英语六级考试~
六级观点类作文模板
六级词汇
liuyaoze.com-文档系统
-
+
首页
MySQL8.x安装&开荒
# 检查mysql依赖 1. 通过`rpm -qa | grep mariadb`查询已经安装的mariadb相程序。 2. 通过`rpm -e --nodeps mariadb-****`卸载mariadb相关的程序。 3. 安装相关依赖`yum install libaio numactl -y` 4. 检查本地防火墙 ``` firewall-cmd --zone=public --add-port=3306/tcp --permanent # 开放3306端口 firewall-cmd --zone=public --remove-port=3306/tcp --permanent #关闭3306端口 firewall-cmd --reload # 配置立即生效 firewall-cmd --zone=public --list-ports # 查看防火墙所有开放的端口 ``` 或云服务器防火墙 # 安装 ``` mkdir mysql-8.4.3 mv mysql-8.4.3 /mysql-8.4.3 tar -xvf mysql-8.4.3-1.el7.x86_64.rpm-bundle.tar cd /opt/mysql-8.4.3 #安装 rpm -ivh --nodeps --force common|libs|client|erver|... #list rpm -qa | grep mysql #卸载 rpm -e --nodeps mysql-community-libs-compat-8.0.32-1.el7.x86_64 ``` ![](/media/202411/2024-11-02_125634_3684740.36058083423739684.png) 安装此图中出现的包,如果缺就找到自己的mysql压缩包然后安装少的包 # 初始化 ``` #初始化相关设置 mysqld --initialize; chown mysql:mysql /var/lib/mysql -R; systemctl start mysqld systemctl enable mysqld #获取初始密码并登录 [root@VM-16-17-centos mysql-8.4.3]# cat /var/log/mysqld.log | grep password >2024-11-02T04:09:14.324095Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: TcKgswh:?4o3 [root@VM-16-17-centos mysql-8.4.3]#mysql -uroot -p #首次登录更改密码(8.4.3) ALTER USER USER() IDENTIFIED BY '@@@@@@@' REPLACE 'TcKgswh:?4o3'; ``` # 远程链接 1. 登录mysql `mysql -uroot -p` 2. 给root用户赋予远程链接的权限 `GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;` 或 ``` use mysql; update user set Host='%' where User='root'; ``` 3. 刷新权限 `FLUSH PRIVILEGES;` 4. 查询权限 ```mysql use mysql; select host,user from user; ``` ![](/media/202304/2023-04-19_160423_9794630.722266092120316.png) 5. 本地测试 `mysql -uroot -pRoot@022516 -h 111.111.111.111` 若登录成功,则root用户已经被赋予了远程连接(%)的权限。 # 用户管理与权限 | 权限 | 说明 | | --- | --- | |ALL PRIVILEGES|新帐户拥有所有特权。| |CREATE |帐户能够创建数据库和表。| |DROP |帐户能够删除数据库和表。| |DELETE |帐户能够从特定表中删除行。| |INSERT |帐户能够将行插入到特定表中。| |SELECT |帐户能够读取数据库。| |UPDATE |帐户能够更新表行。| ```mysql #选择user表 select user from mysql.user; #创建用户liuyaoze,host为localhost,密码为Lyz@13241234 create user IF NOT EXISTS liuyaoze@localhost identified by 'Lyz@@@@@@@@'; #给liuyaoze@localhost赋予*数据库的*表ALL PRIVILEGES权限,可以选择的权限参考上表。 #*为通配符,*.*代表了所有数据库,若只想授权某数据库,则填对应库名。 GRANT ALL PRIVILEGES ON *.* TO liuyaoze@localhost; #删除权限 revoke ALL PRIVILEGES on *.* from liuyaoze@localhost; # 刷新权限 FLUSH PRIVILEGES; #查看username的权限 SHOW GRANTS for username@localhost; #删除用户 drop user liuyaoze@localhost; ``` # 关于编码 - 编码的选择 MySQL从4.1版本开始支持UTF-8编码方式。一个英文字符占用一个字节的存储空间,一个中文占用三个字节的存储空间。这也就导致在写入中文生僻字、emoji表情等四字节的内容时,会报1366的错误。为此,MySQL在 5.5.3 之后增加了 utf-8mb4 字符编码。该编码方式支持4个字节的存储,可以完美解决1366的错误。因此,无论什么项目,编码方式一定要无脑选择 utf-8mb4 。 - mysql服务端的编码 - mysql服务器的字符集 `show variables like '%character%';` ![](/media/202304/2023-04-19_170158_6866050.05961344656183987.png) 其中: character_set_client为客户端编码方式; character_set_connection为建立连接使用的编码; character_set_database数据库的编码; character_set_results结果集的编码; 只要保证以上四个采用的编码方式一样,就不会出现乱码问题。 - 校对集的字符集 Mysql中提供了很多校对集,用于为不同字符集指定比较和排序规则 一下命令可以查看字符集的字符集 `show variables like 'collation%';` ![](/media/202304/2023-04-19_170211_7363760.8417156103611845.png) - 数据库的字符集 查看数据库的字符集;其中可以只写到库名,这样会展示所有表的数据集。 `show database status from 库名 like '表名';` 修改数据库的字符集和校对集的字符集。 `ALTER DATABASE 数据库名 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;`
liuyaoze
2024年11月17日 12:01
0 条评论
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
服务器已完成数据迁移,数据丢失请及时反馈站长,旧服务器数据保留至11月30日。
【温馨提示:本站文档可配置可见范围,如登录后可见、对特定群组可见等,看不到就是没权限】
注册码获取邮箱
work@liuyaoze.com
Markdown文件
Word文件
PDF文档
PDF文档(打印)
分享
链接
类型
密码
更新密码
有效期