Linux环境下mysql的安装与初始操作
环境:CentOS 6.2 X64
资源:http://repo.mysql.com/
1. 下载与安装
1.1 下载并安装用来配置mysql的yum源的rpm包
1.下载
[root@localhost]# wget http://repo.mysql.com/mysql57-community-release-el6-10.noarch.rpm
2.安装
[root@localhost]# yum -y localinstall mysql57-community-release-el6-10.noarch.rpm
注意,如果是centos7的系统,下载的rpm包需要更换,具体使用的包可以到上面资源链接中查看
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
1)新建目录,并下载
2)安装yum源的rpm包
3)安装成功后,在/etc/yum.repos.d/下会多出几个mysql的yum源的配置
1.2 安装mysql
安装mysql命令
[root@localhost]# yum -y install mysql-community-server
1)安装mysql,发现报错
报错信息:ERROR with rpm_check_debug vs depsolve
2)排查发现是postfix版本过低导致,重新对postfix安装升级
安装升级postfix
[root@localhost]# yum install postfix
3)重新安装mysql,成功
1.3 查看mysql的版本
查看mysql版本命令
[root@localhost]# mysql -V
------------------------------------------至此,确定mysql已成功安装------------------------------------------
2. mysql的初始配置
2.1 启动mysql
启动 mysql服务
[root@localhost]# service mysqld start
2.2 初次登录mysql
1)获取初始密码
mysql初次安装,会生成一个初始的临时密码,存放在/var/log/mysqld.log
中
查看初始密码
[root@localhost]# cat /var/log/mysqld.log | grep temporary
2)本地连接mysql并登录
连接登录mysql
[root@localhost]# mysql -h 127.0.0.1 -u root -p
Enter Password: #在此处输入密码即可登录
2.3 修改初始密码
1)初次登录需要修改密码,否则无法执行sql
2)修改密码后可正常执行sql
修改root账号密码
mysql> alter user 'root'@'localhost' identified by 'root';
3)重新通过新密码登录成功
2.4 修改数据库字符集/编码
1)查看当前mysql的字符集/编码
通过mysql> show variables like '%char%';
查看当前数据库的字符集设置情况
mysql> show variables like '%char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
mysql>
发现character_set_server=latin1
;在新建库表,导入中文的时候会有问题,需要改为utf8
2)停止msyql服务,修改配置文件
a.通过service mysqld stop
停止mysql服务,
b.通过which mysql
确定mysql程序位置,
c.通过/usr/bin/mysql --verbose --help | grep -A 1 'Default options'
确定my.cnf配置文件位置
d.在/etc/my.cnf
配置文件的[mysqld]
模块下添加character_set_server=utf8
,保存退出
[root@localhost ~]# /usr/bin/mysql --verbose --help | grep -A 1 'Default options'
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/etc/my.cnf ~/.my.cnf
[root@localhost ~]# vim /etc/my.cnf
注:配置文件显示多个配置路径,意思是优先匹配第一个路径下的配置文件,若没有则往下接着匹配
3)重启mysql服务,查看字符集设置
通过server mysqld start
启动mysql,登录mysql,通过show variables like '%char%';
查看字符集,发现server端字符集设置已变为utf8
3. mysql服务常用相关命令
3.1 mysql的启停与状态查看
mysql的启动
[root@localhost]# service mysqld start
[root@localhost]# /etc/init.d/mysqld start
-----------------------
mysql的停止
[root@localhost]# service mysqld stop
[root@localhost]# /etc/init.d/mysqld stop
-----------------------
mysql重启
[root@localhost]# service mysqld restart
[root@localhost]# /etc/init.d/mysqld restart
-----------------------
mysql状态查看
[root@localhost]# service mysqld status
[root@localhost]# /etc/init.d/mysqld status
3.2 关闭防火墙
防火墙的启动、停止、查看状态
[root@localhost]# service iptables start|stop|status
3.3 查看并关闭强制访问控制策略状态
查看强制访问控制策略
[root@localhost]# getenforce
------------------------------------
关闭强制访问控制策略
[root@localhost]# setenforce 0
4.如何保证mysql可被远程访问
4.1 默认mysql无法被远程访问
从其他设备上,远程访问mysql失败
4.2 关闭防火墙策略
[root@localhost]# service iptables stop
4.3 创建root远程登录密码
1.本地登录mysql
[root@localhost]# mysql -h 127.0.0.1 -u root -p
2.创建root远程登录密码
mysql> grant all privileges on *.* to root@'%' identified by "root";
mysql> flush privileges;
关于mysql grant 用户权限介绍(https://blog.csdn.net/qq_31851107/article/details/101427277)