MySQL安装及可能出现的问题
MySQL出現(xiàn)User xxx already has more than 'max_user_connections' active connections問(wèn)題
1.查看數(shù)據(jù)庫(kù)最大連接數(shù)
show global variables like '%connection%';
2.查看所有連接人數(shù)
show PROCESSLIST;
3.修改最大連接數(shù)
set global max_user_connections=500-1000;
set global max_connections=500-1000;
MySQl出現(xiàn)The MySQL server is running with the --read-only option so it cannot execute this statement問(wèn)題
問(wèn)題出現(xiàn)的原因:
1.連到從庫(kù)了。從庫(kù)一般設(shè)置為只讀。
2.主庫(kù)的read_only參數(shù)被修改為1
解決問(wèn)題:手工修改為0后,問(wèn)題解決。問(wèn)題是read_only為什么會(huì)設(shè)置為1呢
select @@read_only;
set global read_only=0;
MySQl出現(xiàn)Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column....問(wèn)題
問(wèn)題出現(xiàn)的原因:
MySQL 5.7.5后only_full_group_by成為sql_mode的默認(rèn)選項(xiàng)之一,這可能導(dǎo)致一些sql語(yǔ)句失效。
解決問(wèn)題:
1、修改my.conf或my.ini配置文件的sql_mode
2、手動(dòng)修改:set @@sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
select @@sql_mode
MySQL安裝
tar -xvf Percona-Server-5.6.24-72.2-r8d0f85b-el6-x86_64-bundle.tar
rpm -ivh Percona-Server-56-debuginfo-5.6.24-rel72.2.el6.x86_64.rpm
rpm -ivh Percona-Server-shared-56-5.6.24-rel72.2.el6.x86_64.rpm
rpm -ivh Percona-Server-client-56-5.6.24-rel72.2.el6.x86_64.rpm
rpm –ivh Percona-Server-server-56-5.6.24-rel72.2.el6.x86_64.rpm
安裝順序:rpm包很多,只需安裝debuginfo、shared、client、server
?? 安裝目錄
配置文件路徑 /etc/my.cnf
注意:安裝完成后,會(huì)將配置文件放在etc目錄下
vi /etc/my.cnf
數(shù)據(jù)文件路徑:/var/lib/mysql
? 啟動(dòng)服務(wù)
service mysql start????? //自動(dòng)安裝到它自己制定的目錄下,注冊(cè)服務(wù)為mysql
service mysql status
service mysql stop
??? 配置開(kāi)機(jī)啟動(dòng):
chkconfig --list???????? //展現(xiàn)開(kāi)機(jī)的服務(wù)
? 修改root密碼
默認(rèn)沒(méi)有密碼不安全:
mysqladmin –u root password "root"
Linux連接mysql報(bào)錯(cuò):Access denied for user ‘root’@‘localhost’(using password: YES)的解決方法
先停止mysql 服務(wù) service mysqld stop
進(jìn)入mysql安裝目錄bin/ 使用safe模式,進(jìn)行重啟:/usr/bin/mysqld_safe --skip-grant-tables
Warning警告提示,忽略即可。
登錄:
mysql –uroot –proot
已經(jīng)有密碼進(jìn)行修改
mysql> use mysql;
mysql> update user set password=PASSWORD('root') where user='root';
mysql> flush privileges;
驗(yàn)證是否成功安裝
use mysql???? //打開(kāi)mysql數(shù)據(jù)庫(kù)
show tables??? //查看mysql數(shù)據(jù)庫(kù)下的表
注意:Percona安裝和mysql正式版的安裝,在依賴(lài)上有區(qū)別。
打開(kāi)3306端口
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save????? #修改生效
/etc/init.d/iptables status???????? #查看配置
?? 執(zhí)行數(shù)據(jù)庫(kù)的腳本
創(chuàng)建庫(kù)和數(shù)據(jù)庫(kù)表及數(shù)據(jù)
mysql>use jtdb;
mysql>set names utf8;?????????? #防止亂碼
mysql>source jtdb.sql;
? 拓展:如何快速導(dǎo)入大數(shù)據(jù)庫(kù)備份文件
導(dǎo)入sql文件非常慢的問(wèn)題
查看目標(biāo)數(shù)據(jù)庫(kù)的參數(shù)
#客戶(hù)端/服務(wù)器之間通信的緩沖區(qū)的最大大小
show variables like 'max_allowed_packet';
#TCP/IP和套接字通信緩沖區(qū)大小,創(chuàng)建長(zhǎng)度達(dá)net_buffer_length行
show variables like 'net_buffer_length';
導(dǎo)出sql文件時(shí)指定參數(shù)
mysqldump -uroot -p 數(shù)據(jù)庫(kù)名 -e --max_allowed_packet=4194304 --net_buffer_length=16384 > sql文件路徑
導(dǎo)入sql文件
use 目標(biāo)數(shù)據(jù)庫(kù)
source /usr/local/src/lotteryanalysis.sql
? 查看有多少表,每張表有多少記錄
mysql 5.6中的information schema,就是存儲(chǔ)了很多數(shù)據(jù)庫(kù)的元數(shù)據(jù),其實(shí)很多可以用來(lái)做數(shù)據(jù)庫(kù)的性能查詢(xún)用。
USE information_schema;
SELECT table_name,table_rows FROM TABLES
WHERE TABLE_SCHEMA = 'jtdb'
ORDER BY table_rows DESC;
注意:[1]mysql內(nèi)部原因,統(tǒng)計(jì)不準(zhǔn)確
開(kāi)啟MYSQL遠(yuǎn)程訪問(wèn)權(quán)限
語(yǔ)法:
grant [權(quán)限] on [數(shù)據(jù)庫(kù)名].[表名] to ['用戶(hù)名']@['web服務(wù)器的ip地址'] identified by ['密碼'];
grant all on *.* to 'root'@'%' identified by 'root';
或者指定IP地址
grant all on *.* to 'root'@'192.168.1.103' identified by 'root';
修改MYSQL數(shù)據(jù)庫(kù)編碼
vi /etc/my.cnf
在[mysqld]下邊添加以下內(nèi)容:
character-set-server=utf8
init_connect='SET NAMES utf8'
在[mysqld]上邊添加以下內(nèi)容:
[mysql]
default-character-set=utf8
重啟MySQL:
systemctl restart mysqld
查看MySQL編碼的命令行:
show variables like '%character%';
總結(jié)
以上是生活随笔為你收集整理的MySQL安装及可能出现的问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: MySQL5.7 Linux安装流程
- 下一篇: mysql安装 ---简单实用