分类目录归档:mysql

rpm安装mysql5.7

1.下载安装包

下载地址:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar

上传到 /home 目录下

解压安装包

 tar -xf mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar -C /home/mysql/

查询并卸载系统自带的Mariadb

rpm -qa | grep mariadb

rpm -e –nodeps 文件名

查询并卸载系统老旧版本的Mysql

rpm -qa | grep mysql

rpm -e –nodeps 文件名

安装libaio环境(已经存在不需要)

yum install libaio

2.执行Rpm包安装(按顺序)

rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-devel-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm

3.启动mysql服务

查看mysql服务是否启动

service mysqld status

启动服务:

systemctl start mysqld

3.重置root密码

查看随机生成的密码

grep 'temporary password' /var/log/mysqld.log

修改root用户密码

mysql -u root -p

mysql> Enter password: (输入刚才查询到的随机密码)

mysql> SET PASSWORD FOR 'root'@'localhost'= "新密码";

4.开放外部网段访问3306端口

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Jstw@123' WITH GRANT OPTION;

mysql>FLUSH PRIVILEGES;

mysql> exit

5.这里设置开机自启动

方法一   、vi /etc/rc.local       添加service mysqld start

方法二  、 执行 systemctl enable mysqld.service   

(# 注意systemctl 中规定、服务的配置文件要以.service 为后缀

开启防火墙mysql 3306端口的外部访问

firewall-cmd –zone=public –add-port=3306/tcp –permanent

firewall-cmd –reload

查看已开启的端口

firewall-cmd –list-all

netstat -ntpl (TCP类型已开放的端口)

centos6.x安装mysql

下载地址http://dev.mysql.com/downloads/mysql/

选择Red Hat Enterprise后下载对应操作系统版本的RPM Package

例如针对6.5 x64版本 http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm

wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
rpm -ivh mysql-community-release-el6-5.noarch.rpm   安装yum源

yum install mysql mysql-server mysql-devel

chkconfig mysqld on       #设置自动启动

/etc/init.d/mysqld start  #启动mysql服务

/usr/bin/mysql_secure_installation #首次安装后设置密码

#1273-Unknown collation:’utf8mb4_unicode_520_ci’错误的解决办法

1.这是数据库编码的问题,,出现这个问题的原因在于,wordpress4.2版本之后升级了数据库,如果数据库是mysql5.5以上的互相导入没有问题,如果老网站是mysql5.6的,导入新网站是mysql5.5版本以下的,就会出现这个问题。

#1273-Unknown collation:'utf8mb4_unicode_520_ci

2.根据wordpress官方的解释,在导入数据库之前,只需要把utf8mb4编码转成utf-8
备份的sql文件使用noetpad++打开
utf8mb4_unicode_ci,全部替换为:utf8_general_ci

utf8mb4    全部替换为    utf8
image.png

3. 修改wordpress的配置文件wp-config.php

define('DB_CHARSET', 'utf8mb4');

改为define('DB_CHARSET', 'utf-8');

完成之后,基本能解决问题了。

如何处理:starting mysql error:the server quit without updating pid file(/usr/local/mysql/var/..pid)

1.linux下mysql无法启动提示: starting mysql error:the server quit without updating pid file(/usr/local/mysql/var/..pid)

image.png

2.首先查看日志文件,如果是用yum指令安装的log日志文件一般在/var/log/mysq.log,如果是编译安装的看下目录下的var/error等字和my.cnf配置文件.我这边是在/usr/loca/mysql/var/服务器名.error

image.png

3.通过查看日志文件发现my.cnf中的选项多了–应该是之前修改错误了把–去掉即可.

image.png

image.png

如何修改mysql5.7数据库root账号密码

my.ini文件的[mysqld]下面添加skip-grant-tables语句
mysql

mysql> update mysql.user set authentication_string=password('新密码') where user='root' and Host = 'localhost';
mysql> flush privileges;

mysql> quit;
新版的mysql数据库下的user表中已经没有Password字段了而是将加密后的用户密码存储于authentication_string字段

如何添加误删除mysql数据库root账号

mysql数据库的root账号被误删除了如何添加

1.       打开mysql.ini文件在mysqld下面添加skip-grant-tables后重启mysql数据库.

2.       直接执行mysql命令进入数据库
MariaDB [mysql]> insert into mysql.user set user='root'; 插入一个账号

3.       执行下面命令(设置root用户的权限,所有权限为 ' y ' ,即拥有最高权限。)

MariaDB [mysql]> update user set
Host='localhost',select_priv='y', insert_priv='y',

update_priv='y',Alter_priv='y',delete_priv='y',create_priv='y',drop_priv='y',

reload_priv='y',shutdown_priv='y',Process_priv='y',file_priv='y',grant_priv='y',

References_priv='y',index_priv='y',create_user_priv='y',show_db_priv='y',

super_priv='y',create_tmp_table_priv='y',Lock_tables_priv='y',execute_priv='y',

repl_slave_priv='y',repl_client_priv='y',create_view_priv='y',show_view_priv='y',

create_routine_priv='y',alter_routine_priv='y',create_user_priv='y'
where user='root';

4.退出后重启mysql数据库执行mysql –uroot
–p 直接回车进入数据库设置root密码
MariaDB [(none)]> update mysql.user set password=password('1234567') where
user=

'root';
MariaDB [(none)]> flush privileges;

MariaDB [(none)]> exit

5.去掉my.ini中的skip-grant-tables后重启数据库就可以使root账号进入mysql数据库了

注册mysql数据库

注册mysql5.5

mysqld –install mysql5.5
–defaults-file=”D:\Program Files (x86)\MySQL\MySQL Server
5.5\php.ini”

注册5.0

mysqld-nt.exe install MySQL5 –defaults-file=”D:\Program Files\MySQL\MySQL Server 5.0\my.ini”

mysql数据库还原后乱码

1.使用命令还原mysql数据库后乱码,检查备份的.sql文件字符编码为utf8,而数据库默认的字符编码为lant

2.尝试解决方法还原数据库时候添加参数 -p –default-character-set=utf8

mysql -uroot -p
–default-character-set=utf8 dbname < bak.sql