企业网站导航设计,代理主要干什么,如何招聘软件网站开发人员,php做网站脑图一#xff09; 下载免安装包#xff1a; mysql下载地址: https://dev.mysql.com/downloads/mysql/下载时#xff0c;选择以前5.7版本#xff1a; image 下载第一个TAR压缩包#xff1a; image 二#xff09; 定义安装路径并解压安装包 1、假设需要把MySQL放到 /usr/local… 一 下载免安装包 mysql下载地址: https://dev.mysql.com/downloads/mysql/下载时选择以前5.7版本 image 下载第一个TAR压缩包 image 二 定义安装路径并解压安装包 1、假设需要把MySQL放到 /usr/local/qhs/mysql5.7 目录下运行 则手工创建目录 /usr/local/qhs/mysql5.7 下文把此目录称为【安装目录】 2、上传压缩包到 【安装目录】 下 执行 如下命令 [rootlocalhost~]# tar -xzvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz会在目录下解压出 mysql-5.7.35-linux-glibc2.12-x86_64 目录该目录即为mysql的运行目录此目录下有 bin 等mysql目录 三创建系统mysql组和mysql用户 检查mysql组和用户是否存在如无则创建 [rootlocalhost~]# cat /etc/group | grep mysql [rootlocalhost~]# cat /etc/passwd | grep mysql若不存在则创建如下 # 创建mysql用户组
[rootlocalhost~]# groupadd mysql
# 创建一个用户名为mysql的用户并加入mysql用户组
[rootlocalhost~]# useradd -g mysql mysql
# 制定password 为mysql
[rootlocalhost~]# passwd mysql
Changing password for user mysql.
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.四更改【安装目录】所属的组和用户 cd /usr/local/qhs/
# 更改所属的组和用户
[rootlocalhost local]# chown -R mysql mysql5.7/
[rootlocalhost local]# chgrp -R mysql mysql5.7/五创建mysql的数据目录和日志目录 # 创建数据和日志存储目录目录可以随意指定但必须存在这两个目录在下一步中会使用这两个目录的所有者必须是mysql用户
[rootlocalhost mysql5.7]# cd /usr/local/qhs/mysql5.7/
[rootlocalhost mysql]# mkdir data
[rootlocalhost mysql]# mkdir logs
# 修改所有者
[rootlocalhost mysql]# chown -R mysql:mysql data六定义mysql的 my.cnf 文件 此文件是mysql的运行定义文件需要根据实际情况修改然后放置到指定目录下一般情况下如果不特别说明比如系统中只有一个MySQL就放在 /etc 目录下如果系统需要装多个mysql那么每个MySQL对应的 my.cnf 文件就需要放在各自配置的目录下 创建 my.cnf文件 my.cnf内容如下: [mysqld]
#下面语句的作用主要是当前本机登录不需要密码可以注释掉
skip-grant-tables
#mysql安装目录也就是 mysql的 bin 的父目录
basedir/usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/
#mysql数据库目录也就是上面步骤创建的data目录必须存在
datadir/usr/local/qhs/mysql5.7/data
#mysql数据库监听端口可以按需修改不同mysql开启不同的端口
port 3307
character_set_serverutf8
max_allowed_packet 512M
innodb_log_file_size 2048M
[mysqld_safe]
#错误日志也就是上面步骤创建的data目录下的一个文件此文件可以不存在
log-error/usr/local/qhs/mysql5.7/data/error.log
#pid文件此配置项有的说不需要反正我配置上是没有问题的data目录必须存在
pid-file/usr/local/qhs/mysql5.7/data/mysqld.pid
#临时目录可以不存在只要指定就好
tmpdir/tmp/mysql5.7
#
# include all files from the config directory
#
#!includedir /etc/my.cnf.d
## 不建议开日志,所有的操作都记录文件太大
# general-log1
# log-outputFILE
# general-log-file/data_disk/mysql/logs/mysql.log
slow_query_log1
long_query_time3
slow_query_log_file/data_disk/mysql/logs/slowquery.log
# 允许最大连接数
max_connections200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-serverutf8
# 创建新表时将使用的默认存储引擎
default-storage-engineINNODB
lower_case_table_names1
max_allowed_packet16M场景一 系统只有一个MySQL放在默认目录 /etc/ 下强烈建议按照场景二配置因为我是用的场景二主要是不知道当修改了data目录后是否需要按照场景二去修改support-files文件里的内容
# 进入/etc文件夹下
[rootlocalhost mysql]# cd /etc
# 编辑my.cnf
[rootlocalhost etc]# vim my.cnf场景二 系统有多个MySQL放在各自配置目录下例如本例放在 /usr/local/mysql5.7/ mysql-5.7.35-linux-glibc2.12-x86_64/目录下建议放到my.cnf的basedir 目录下以免有各种问题 放在目录下之后还需要配置如下进入mysql运行目录的support-files文件夹与bin同级, 编辑mysql.server文件 #和上面 my.cnf 的配置一样是mysql的运行目录
basedir/usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/
#和上面 my.cnf 的配置一样是mysql的data目录
datadir/usr/local/qhs/mysql5.7/data/
#没搞清楚我是原样使用反正配置时没有这个文件
lockdir/var/lock/subsys5.7
#没搞清楚我是原样使用反正配置时没有这个文件
lock_file_path$lockdir/mysql5.7
#没搞清楚我是原样使用也就是data目录加一个pid文件此文件运行时生成
mysqld_pid_file_path/usr/local/mysql5.7/data/mysqld.pid
# 非常重要 搜索conf后再修改这个在else语句里面 这里的值就是当前MySQL的 my.cnf 文件所在位置非常重要
conf/usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/my.cnf七 初始化mysql [rootlocalhost mysql] /usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/mysqld --initialize-insecure --datadir/usr/local/qhs/mysql5.7/data/ --basedir/usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/ --usermysql八安全模式启动mysql 通过mysqld_safe启动 [rootlocalhost mysql]# /usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/mysqld_safe --defaults-file/usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/my.cnf --skip-grant-tables --skip-networking #添加--skip-networking参数让实例关闭监听端口自然也就无法建立TCP连接而只能通过本地socket进行连接。启动后通过另外一个SSH命令窗口执行如下步骤 九修改root密码授权root远程连接 如下修改后可通过执行 /usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/mysql -uroot -p 来验证密码 [rootlocalhost mysql]# /usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64//bin/mysql
mysql flush privileges;
mysql update mysql.user set authentication_stringpassword(Abcd123456) where hostlocalhost and userroot;
mysql grant all privileges on *.* to root% identified by Abcd123456;
mysql flush privileges;
mysql exit八 把mysql启动做成服务 复制该mysql.server文件到/etc/init.d并重命名为mysql5.7可按自己需要命名 [rootlocalhost mysql] cp -i /usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/support-files/mysql.server /etc/init.d/mysql5.7九 启动/停止服务 [rootlocalhost mysql] service mysql5.7 {start|stop|restart|reload|force-reload|status}
#启动时如果抛错可以到error日志中查看。
# 1---比如出现ERROR! The server quit without updating PID file /usr/local/develop/db/mysql5.7/data/mysqld.pid). 就说明进程起不来而日志中提示
#[ERROR] Could not create unix socket lock file /var/lib/mysql/mysql.sock.lock.
#则需要手工创建文件夹/var/lib/mysql/ 并执行 chown -R mysql:mysql /var/lib/mysql/ 给它赋权
#还有可能出现自定义的 my.cnf 被忽略的提示这是因为 my.cnf 的权限不能是777 而应该是644否则mysql会取默认的 /etc/ 下面的my.cnf十重启电脑 十一启动mysql 把 my.cnf 文件中的 skip-grant-tables 注释掉 service mysql5.7 start|十二阿里云的注意事项 如果是阿里云上安装的mysql还需要在实例的安全组属性中添加3306或对应端口端口打开规则 点击ECS实例名称进入ECS详情页面在页面上可以查看该ECS的各种属性其中就有一项是 安全组属性千万不能直接用左边导航菜单的安全组那个和当前ECS实例没有任何关系配置了也没用 FAQ 启动失败一般是对应的日志文件不存在或者目录没有权限。 如果服务注册失败可以通过如下命令直接启动 mysqld --defaults-file/usr/local/qhs/mysql5.7/mysql-5.7.35-linux-glibc2.12-x86_64/my.cnf --userroot 若启动时候抛异常 ERROR 2002 (HY000): Cant connect to local MySQL server through socket /tmp/mysql.sock (2) 则需要建立软连接ln -s /usr/local/qhs/mysql5.7/mysql.sock /tmp/mysql.sock 最后编辑于2024-12-14 11:45:34 © 著作权归作者所有,转载或内容合作请联系作者 喜欢的朋友记得点赞、收藏、关注哦