mysql安装过程
一、所需材料
- 一个能传输文件的工具(Xftp 5),可自行选择
- linux版本的mysql安装包(我用的是 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz)
- 官网下载地址https://downloads.mysql.com/archives/community/
二、开始安装
-
把安装包传到 /opt 目录下,可以自己选择目录
-
查询原来是否默认安装过mysql 命令:rpm -qa | grep mysql
有记录显示的话代表已经安装了mysql的其它版本,把老版本进行卸载使用下面命令二选一:
rpm -e mysql_libs //普通删除模式
rpm -e --nodeps mysql_libs // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
如上再执行查询命令,查不到记录就是卸载成功了。 -
创建mysql用户组和mysql用户:
groupadd mysql 创建mysql组
useradd -g mysql mysql 创建mysql用户所属mysql组 -
解压文件 tar -zxvf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
-
把文件复制或剪切到/usr/local/mysql(官方推荐安装目录是/usr/local)命令:mv mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql
-
接着执行:cd /usr/local/mysql/ 再执行:mkdir data(这里主要是切换目录和创建一个data文件夹)
-
chown -R mysql:mysql /usr/local/mysql 把这个文件的所有者改为mysql
-
因为在5.7.17版本以后,使用tar.gz安装时,support-files文件夹中不在生成my_default.cnf文件,新版本不需要my.cnf文件也能正常运行,但是很多时候我们还是需要一个my_default.cnf文件,所以我们手动创建一个,切进目录 support-files 中:cd support-files/ ,然后创建一个my_default.cnf文件:touch my_default.cnf
-
写入一些基本的配置,可自行百度,也可以直接复制底下的(我也是百度复制的)
编辑文件:vi my_default.cnf 然后把下面的代码块复制进去
然后要给这个文件设置相应的权限
再设置所属分组和所属用户如下图操作即可:
用到的命令:chmod 755 my_default.cnf,chown mysql my_default.cnf,chgrp mysql my_default.cnf[mysqld] # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. # innodb_buffer_pool_size = 128M # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # These are commonly set, remove the # and set as required. basedir = /usr/local/mysql datadir = /usr/local/mysql/data socket = /tmp/mysql.sock log-error = /usr/local/mysql/data/error.log pid-file = /usr/local/mysql/data/mysql.pid tmpdir = /tmp port = 3306 #lower_case_table_names = 1 # server_id = ..... # socket = ..... #lower_case_table_names = 1 max_allowed_packet=32M default-authentication-plugin = mysql_native_password #lower_case_file_system = on #lower_case_table_names = 1 log_bin_trust_function_creators = ON # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. # join_buffer_size = 128M # sort_buffer_size = 2M # read_rnd_buffer_size = 2M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
-
切回mysql目录:cd /usr/local/mysql
-
初始化mysql 命令:mysql bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data cd /usr/local/mysql
执行后出现下面界面就是成功了,记录临时密码:标红的地方
三、配置mysql
- 添加服务,拷贝服务脚本到init.d目录
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql - 把配置文件也拷贝过去并改名叫my.cnf
cp /usr/local/mysql/support-files/my_default.cnf /etc/my.cnf - 到这步基本配置完成了,可以启动mysql了。
四、启动mysql,更改密码,开放远程连接
service mysql start 启动
service mysql stop 停止
service mysql restart 重启
-
这里我们执行启动命令:如下图为启动成功。
-
登录mysql,进行修改密码和开放远程连接
切到bin目录下:cd bin/
然后执行:./mysql -uroot -p’kv62hrdy2#>Z’(如果存在特殊字符用单引号引起来),成功如下图:
-
修改密码: SET PASSWORD = PASSWORD(‘root’);
-
开放远程:GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘root’;
-
刷新一下:flush privileges;(quit 或者exit 退出mysql界面)
-
还有一步,如果开启了防火墙则需要开发3306端口(没开防火墙可不用此操作)
进入配置文件:vim /etc/sysconfig/iptables,新增一行记录用于开放端口。
-
重启防火墙即可:service iptables restart(没开防火墙可不用此操作)
-
这样就可以远程访问了。
设置开启自动启动(所有运行级别下)
chkconfig mysql on