redhat快速安装mysql

时间:2021-10-18 10:08:11

1、安装

查看有没有安装过:
          yum list installed mysql*
          rpm -qa | grep mysql*
 
查看有没有安装包:
          yum list mysql*
 
安装mysql客户端:
          yum install mysql
 
安装mysql 服务器端:
          yum install mysql-server
 
          yum install mysql-devel

2、启动&&停止

 
数据库字符集设置
          mysql配置文件/etc/my.cnf中加入default-character-set=utf8
 
启动mysql服务:
          service mysqld start或者/etc/init.d/mysqld start
开机启动:
          chkconfig -add mysqld,查看开机启动设置是否成功chkconfig --list | grep mysql*
 
          mysqld             0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭
停止:

          service mysqld stop

3、登录

 
创建root管理员:
          mysqladmin -u root password 123456
 
登录:

          mysql -u root -p输入密码即可。

远程登陆-h指定服务器ip

 mysql -h 10.16.73.124  -u root -p输入密码即可。

忘记密码:
          service mysqld stop
 
          mysqld_safe --user=root --skip-grant-tables
 
          mysql -u root
 
          use mysql
 
          update user set password=password("new_pass") where user="root";
 
          flush privileges;  
 

4、远程访问

 
开放防火墙的端口号

mysql增加权限:mysql库中的user表新增一条记录host为“%”,user为“root”。

5、Linux MySQL的几个重要目录

数据库目录
         /var/lib/mysql/
配置文件
         /usr/share /mysql(mysql.server命令及配置文件)
相关命令
         /usr/bin(mysqladmin mysqldump等命令)
启动脚本

         /etc/rc.d/init.d/(启动脚本文件mysql的目录)        


6、修改localhost

更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改成"%" 
mysql>use mysql; 
mysql>update user set host = '%' where user = 'root'; 
mysql>select host, user from user;
mysql>FLUSH PRIVILEGES;

 

7、指定授权

使用myuser/mypassword从任何主机连接到mysql服务器: 
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

使用myuser/mypassword从ip为192.168.225.166的主机连接到mysql服务器:
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.225.166' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

 

8、泛授权

mysql -h localhost -u root 
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; //赋予任何主机上以root身份访问数据的权限 
mysql> FLUSH PRIVILEGES;

 

9、解决Mysql无法远程连接的问题


1、Mysql的端口是否正确
通过 netstat -ntlp查看端口占用情况,一般情况下端口是3306。在用工具连接MySQl是要用到端口。例如My Admin\My Query Browser\MySQl Front等。

2、检查用户权限是否正确
mysql库的user表里有两条记录:host分别为localhost和%(为了安全,%可以换成你需要外部连接的IP)。

3、查看/etc/mysql/my.cnf中,skip-networking 是否已被注掉
需要注掉
报错:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (111)

 

sudo gedit /etc/mysql/my.cnf 
#skip-external-locking

#bind-address        = 127.0.0.1

skip-name-resolve


4、查看iptables是否停掉,没关的情况下,无法连接
通过:service iptables stop临时关闭。
报错:ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.51.112' (113)

 设置好以后需要重启:sudo service mysql restart

10、创建数据库并修改数据库引擎

CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

mysql默认是关闭InnoDB存储引擎的使用的,将InnoDB设置为默认的引擎如下。
(1) 查看mysql存储引擎情况: mysql>show engines。 InnoDB | YES,说明此mysql数据库服务器支持InnoDB引擎。
(2)设置InnoDB为默认引擎:在配置文件my.ini或者my.conf中的 [mysqld] 下面加入

vi /etc/my.cnf

default-storage-engine=INNODB
(3) 重启mysql服务器

(4)登录mysql数据库,mysql>show engines。如果出现 InnoDB |DEFAULT,则表示设置InnoDB为默认引擎成功。

redhat快速安装mysql

11、修改数据库的配置

default-storage-engine=INNODB  #修改默认的数据库引擎
set-variable=lower_case_table_names=1 #大小写不敏感
default-character-set=utf8 #字符集为utf-8,解决乱码,如???