实时搜索: mysql怎么连接

mysql怎么连接

351条评论 1669人喜欢 2956次阅读 955人点赞
Navicat删除用户一顿瞎操作后我的localhost无法连接到MySql了,也没办法新建用户,怎么办 , 在mysql下创建了个zabbix库。也给他负了权限:

mysql -uroot -pzhao@123
create database zabbix;
grant all on zabbix.* to zabbix@localhost identified by '123456';
flush privileges;

是启动应用还是报错 15355:20140820:132920.362 [Z3001] Connect...

localhost无法连接到MySql怎么办?: 1.在mysql安装目录下的 my.ini 文件中的 [mysqld] 标签里加上 skip-grant-tables 跳过权限表

2.重启mysql服务,这时可以连接上

3.改表

mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;

4.授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
在网上看到这一句的意思是允许用户在任何地方可连接,password记得修改成root的密码
5.删除my.ini里的skip-grant-tables,重启mysql,就可以连接上了

关于mysql数据库连接问题: 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: YES)

这里提示是你的密码没有设置成功,所以你用zabbix用户登录时会报错
mysql> grant all on zabbic.* to 'zabbix'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
[root@localhost wwwroot]# mysql -u zabbix -p123456
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.50-log Source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

这个就成功了。
后面的你可以把你的sql文件贴出来,报的都是sql文件的错。

Navicat for mysql怎么连接本地MySQL数据库:

打开Navicat之后点击连接 选择mysql;

这个中
连接名是随便起的 
主机名或ip地址这栏,localhost就是本地数据库 127.0.0.1也是本机ip
端口的话  看你自己的mysql的端口是多少
用户名如果没改过的话 默认就是root
密码 设置的多少了
输入完之后点击连接测试看下是否能连上。

如何解决MySQL连接超时关闭: 经 过这样处理后,可以非常有效的解决MySQL server has gone away这样的问题,而且不会对系统造成额外的开销。 今天遇到类似的情景,MySQL只是冷冷的说:MySQL server has gone away。 大概浏览了一下,主要可能是因为以下几种原因: 一种可能是发送的SQL语句太长,以致超过了max_allowed_packet的大小,如果是这种原因,你只要修改my.cnf,加大max_allowed_packet的值即可。 还有一种可能是因为某些原因导致超时,比如说程序中获取数据库连接时采用了Singleton的做法,虽然多次连接数据库,但其实使用的都是同一个连接,而且程序中某两次操作数据库的间隔时间超过了wait_timeout(SHOW STATUS能看到此设置),那么就可能出现问题。最简单的处理方式就是把wait_timeout改大,当然你也可以在程序里时不时顺手mysql_ping()一下,这样MySQL就知道它不是一个人在战斗。 解决MySQL server has gone away 1、应用程序(比如PHP)长时间的执行批量的MYSQL语句。最常见的就是采集或者新旧数据转化。

如何解决MySQL连接超时关闭: mysql命令 查看mysql server超时时间: msyql> show global variables like '%timeout%'; 设置mysql server超时时间(以秒为单位): msyql> set global wait_timeout=10; msyql> set global interactive_timeout=10;

怎么实时查看mysql当前连接数:

通过在mysql命令界面下执行如下命令

show status like 'Threads_connected';  #得到当前的连接数
show processlist; #显示当前正在执行的mysql连接

docker容器内怎么连接外部的mysql: 推荐使用Dockerfile方式。
服务的管理使用的是supervisord, 因为dockerfile里只会有一个cmd生效,如果我想通过ssh去管理容器还要有mysql服务的启动起来 cmd的方式就无法实现,当然容器不需要以sshd的方式去管理,这些也都是看自己怎么去使用,比如说我想备份容器里的数据 我完全可以使用 –volumes-from <容器name> , 重启使用 docker restart <容器id>, 我个人也是使用ssh习惯了 所以依赖的镜像把ssh服务栽进去了。
# docker 版本:

复制代码
代码如下:
[root@private_network mysql]# docker version

Client version: 1.6.0-rc5
Client API version: 1.18
Go version (client): go1.4.2
Git commit (client): fc4825d
OS/Arch (client): linux/amd64
Server version: 1.6.0-rc5
Server API version: 1.18
Go version (server): go1.4.2
Git commit (server): fc4825d
OS/Arch (server): linux/amd64[/code]

# 目录结构

复制代码
代码如下:
mysql/
|-- cmake-3.2.2.tar.gz
|-- create_mysql_user.sh # mysql用户初始化脚本
|-- Dockerfile
|-- install_mysql-5.6.24.sh # mysql服务安装脚本
|-- my.cnf # mysql服务配置文件
|-- mysql-5.6.24.tar.gz
`-- supervisord.conf # 服务管理工具配置文件

# Dockerfile

复制代码
代码如下:
# FROM: 依赖的镜像
FROM ted1993/mysql:5.6.24

#MAINTAINER: 个人信息
MAINTAINER xuqiangqiang "739827282@qq.com"

# RUN: 执行命令
RUN yum -y install tar gcc-c++ supervisor ncurses-devel libtool bison bison-devel pwgen

RUN mkdir -p /var/log/supervisor

# ADD: 添加本地文件到容器中,如果是压缩包会在目标目录进行自动解压,如果只想添加文件可以使用 COPY命令
ADD ./supervisord.conf /etc/supervisord.conf
ADD ./cmake-3.2.2.tar.gz /root/tools/
ADD ./mysql-5.6.24.tar.gz /root/tools/
ADD ./install_mysql-5.6.24.sh /root/tools/
ADD ./create_mysql_user.sh /create_mysql_user.sh

# WORKDIR: 当前的工作目录
WORKDIR /root/tools/

RUN sh install_mysql-5.6.24.sh

ADD ./my.cnf /data/server/mysql-5.6.24/etc/my.cnf

RUN rm -rf /root/tools/mysql-5.6.24
RUN rm -rf /root/tools/mysql-5.6.24.tar.gz
RUN rm -rf /root/tools/cmake-3.2.2
RUN rm -rf /root/tools/cmake-3.2.2.tar.gz

# EXPOSE: 公开的端口,会暴露在外的端口
EXPOSE 22 3306

# CMD: 容器启动执行的命令 一个dockerfile只有一个cmd生效。
CMD ["/usr/bin/supervisord"]

# supervisord.conf 服务管理工具通过supervisord管理服务

复制代码
代码如下:
[supervisord]
nodaemon=true

[program:mysqld]
command=/etc/init.d/mysqld start
numprocs=1
autostart=true
autorestart=true

[program:sshd]
command=/usr/sbin/sshd -D
numprocs=1
autostart=true
autorestart=true

# install_mysql-5.6.24.sh

复制代码
代码如下:
#!/bin/bash
grep "^mysql:" /etc/passwd &> /dev/null || groupadd mysql && useradd -g mysql -s /sbin/nologin mysql

if [ ! -d cmake-3.2.2 ];then
tar xzvf cmake-3.2.2.tar.gz
fi
cd cmake-3.2.2
./bootstrap && gmake && gmake install && cd ..

if [ ! -d mysql-5.6.24 ];then
tar xzf mysql-5.6.24.tar.gz
fi
cd mysql-5.6.24
cmake \
-DCMAKE_INSTALL_PREFIX=/data/server/mysql-5.6.24 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DMYSQL_DATADIR=/data/mysql-5.6.24/ \
-DSYSCONFDIR=/data/server/mysql-5.6.24/etc/ \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_EXTRA_CHARSETS=complex \
-DENABLED_LOCAL_INFILE=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_unicode_ci \
-DWITH_DEBUG=0
CPU_NUM=$(cat /proc/cpuinfo | grep processor | wc -l)
if [ $CPU_NUM -gt 1 ];then
make -j$CPU_NUM
else
make
fi
make install

echo "PATH=\$PATH:/data/server/mysql/bin" >> /etc/profile && . /etc/profile
ln -s /data/server/mysql-5.6.24/ /data/server/mysql
rm -rf /etc/my.cnf

mkdir -p /data/server/mysql-5.6.24/etc/
mkdir -p /data/server/mysql/data/
mkdir -p /data/log/mysql/

chown -R mysql:mysql /data/server/mysql/
chown -R mysql:mysql /data/server/mysql/data/
chown -R mysql:mysql /data/log/mysql
\cp -f /data/server/mysql/support-files/mysql.server /etc/init.d/mysqld
sed -i 's#^basedir=$#basedir=/data/server/mysql#' /etc/init.d/mysqld
sed -i 's#^datadir=$#datadir=/data/server/mysql/data#' /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
/data/server/mysql/scripts/mysql_install_db --datadir=/data/server/mysql/data/ --basedir=/data/server/mysql --user=mysql

# create_mysql_user.sh

复制代码
代码如下:
#!/bin/bash

/data/server/mysql/bin/mysqld_safe >> /dev/null 2>&1 &

RET=1
while [[ RET -ne 0 ]]; do
echo "=> Waiting for confirmation of MySQL service startup"
sleep 5
/data/server/mysql/bin/mysql -uroot -e "status" > /dev/null 2>&1
RET=$?
done

echo "============================MYSQL_PASS_INFO=============================== "
echo ""
PASS_ROOT=${MYSQL_PASS:-$(pwgen -s 8 1)}
PASS_DBA=${MYSQL_PASS:-$(pwgen -s 8 1)}
echo ""
echo "=> Creating MySQL root user with ${PASS_ROOT} password"
echo "=> Creating MySQL dba user with ${PASS_DBA} password"
echo ""
/data/server/mysql/bin/mysql -uroot -e "grant all privileges on *.* to 'dba'@'%' identified by '${PASS_DBA}'";
/data/server/mysql/bin/mysql -uroot -e "update mysql.user set password=PASSWORD('${PASS_ROOT}') where user='root' and host='localhost'";
echo ""
echo "===================================END====================================="
echo ""
echo "=> Done!"

echo ""
echo ""
echo "==============================REMOTE_MYSQL_PASSWORD====================="
echo "You can now connect to this MySQL Server using:"
echo ""
echo " mysql -udba -p${PASS_DBA} -h<host> -P<port>"
echo ""
echo "Please remember to change the above password as soon as possible!"
echo "MySQL user 'root' has no password but only allows local connections"
echo "========================================================================"

# 通过docker build命令提交镜像

复制代码
代码如下:
docker build -t ted1993/mysql:5.6.24 . # 注意最后面有一个"."

# 使用docker images 命令查看镜像

复制代码
代码如下:
[root@private_network mysql]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ted1993/mysql 5.6.24 d3ed9c578f4c 5 days ago 902.8 MB

# 使用docker run 命令启动容器 -P 使用随机端口映射容器端口 -p 3306:3306 使用指定端口

复制代码
代码如下:
docker run -d -P ted1993/mysql:5.6.24

# 使用docker ps 命令查看运行容器id

复制代码
代码如下:
[root@private_network mysql]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ab622592bf1e mysql:5.6.24 "/usr/bin/supervisor 3 days ago Up 3 days 0.0.0.0:5000->22/tcp, 0.0.0.0:5001->3306/tcp jolly_swartz

# 使用docker commit 提交新的镜像

docker commit ab622592bf1e ted1993/mysql:2015-06-02[/code]

Docker使用Link在容器之间建立连接

在使用Docker的时候我们会常常碰到这么一种应用,就是我需要两个或多个容器,其中某些容器需要使用另外一些容器提供的服务。比如这么一种情况:我们需要一个容器来提供mysql的数据库服务,而另外两个容器作为客户端来连接使用mysql数据库服务。下面我们就来看看Docker是怎样通过Link来实现这种功能的。
这里我们首先创建两个容器image,一个用来模拟mysql数据库,另外一个使用mysql的client来模拟一些使用mysql服务的应用,这种应用可以是任何php,python,java等的应用。
先创建一个mysql_server目录并在其下创建一个Dockerfile文件,内容如下

复制代码
代码如下:
FROM centos:centos6
MAINTAINER Fanbin Kong "kongxx@hotmail.com"

RUN yum install -y mysql-server mysql

RUN /etc/init.d/mysqld start &&\
mysql -e "grant all privileges on *.* to 'root'@'%' identified by 'letmein';"&&\
mysql -e "grant all privileges on *.* to 'root'@'localhost' identified by 'letmein';"&&\
mysql -u root -pletmein -e "show databases;"

EXPOSE 3306

CMD ["/usr/bin/mysqld_safe"]

然后根据Dockerfile来创建image

复制代码
代码如下:
sudo docker build -t kongxx/mysql_server .

创建一个mysql_client目录并在其下创建一个Dockerfile文件,内容如下

复制代码
代码如下:
FROM centos:centos6
MAINTAINER Fanbin Kong "kongxx@hotmail.com"

RUN yum install -y mysql

然后根据Dockerfile来创建image

复制代码
代码如下:
sudo docker build -t kongxx/mysql_client .

创建完image之后,我们可以使用下面命令来查看结果

复制代码
代码如下:
$ sudo docker images | grep kongxx
kongxx/mysql_client latest aa31f22f6fc5 2 hours ago 303.7 MB
kongxx/mysql_server latest 3b9b08c8dda4 2 hours ago 353.3 MB

第二步是根据image来创建我们的应用场景
首先创建提供mysql数据库服务的容器

复制代码
代码如下:
sudo docker run --name=mysql_server -d -P kongxx/mysql_server

分别创建两个使用上一步创建出来mysql数据库服务的容器
第一个应用容器

复制代码
代码如下:
sudo docker run --name=mysql_client1 --link=mysql_server:db -t -i kongxx/mysql_client /usr/bin/mysql -h db -u root -pletmein

第二个应用容器

复制代码
代码如下:
sudo docker run --name=mysql_client2 --link=mysql_server:db -t -i kongxx/mysql_client /usr/bin/mysql -h db -u root -pletmein

这里需要特别注意一下“–link=mysql_server:db”,这个参数就是告诉Docker容器需要使用“mysql_server”容器,并将其别名命名为db,这样在这两个容器里就可以使用“db”来作为提供mysql数据库服务的机器名。所以在最后启动参数里我们使用的是“/usr/bin/mysql -h db -u root -pletmein”来连接mysql数据库的。
运行完上面两个命令,我们就会在创建了两个mysql的client的容器,此时我们可以使用下面命令来查看状态

复制代码
代码如下:
sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ac0c76c627c0 kongxx/mysql_client:latest /usr/bin/mysql -h db 10 seconds ago Up 9 seconds mysql_client2
763c4825722d kongxx/mysql_client:latest /usr/bin/mysql -h db 41 minutes ago Up 40 minutes mysql_client
32f7839f7e9d kongxx/mysql_server:latest /usr/bin/mysqld_safe About an hour ago Up About an hour 0.0.0.0:49153->3306/tcp mysql_client1/db,mysql_client2/db,mysql_server

这里注意一下最后一行,也就是mysql_server容器的“NAMES”列的内容“mysql_client/db,mysql_client2/db,mysql_server”,这就说明mysql_client1和mysql_client2都和db建立的连接。

C#怎么连接mysql cluster集群: mysql cluster 7.1.3 安装笔记

今天初步安装了一下mysql cluster,基本上都是按照官方文档做的,欢迎大家拍砖。
1,服务器使用情况

Management (MGMD) node 192.168.0.10

MySQL server (SQL) node 192.168.0.20

Data (NDBD) node "A" 192.168.0.30

Data (NDBD) node "B" 192.168.0.40

2,安装Management、Sql node、 Data node 重复以下步骤:

[root@www local]# tar -zxvf mysql-cluster-gpl-7.1.3-linux-i686-glibc23.tar.gz
[root@www local]# mv mysql-cluster-gpl-7.1.3-linux-i686-glibc23 mysql
[root@www local]# groupadd mysql
[root@www local]# useradd -g mysql mysql
[root@www local]# chown -R mysql.mysql mysql
[root@www local]# /usr/local/mysql/scripts/mysql_install_db --user=mysql
[root@www mysql]# cp support-files/mysql.server /etc/rc.d/init.d/
[root@www mysql]# chmod +x /etc/rc.d/init.d/mysql.server
[root@www mysql]# chkconfig --add mysql.server

3,配置Management节点:
[root@www mysql]# mkdir /var/lib/mysql-cluster
[root@www mysql]# vi /var/lib/mysql-cluster/config.ini
[ndbd default]
NoOfReplicas=2 # Number of replicas
DataMemory=80M # How much memory to allocate for data storage
IndexMemory=18M # How much memory to allocate for index storage
# For DataMemory and IndexMemory, we have used the
# default values. Since the "world" database takes up
# only about 500KB, this should be more than enough for
# this example Cluster setup.

# TCP/IP options:
[tcp default]
portnumber=2202 # This the default; however, you can use any port that is free
# for all the hosts in the cluster
# Note: It is recommended that you do not specify the port
# number at all and allow the default value to be used instead

# Management process options:
[ndb_mgmd]
hostname=192.168.0.10 # Hostname or IP address of management node
datadir=/var/lib/mysql-cluster # Directory for management node log files

# Options for data node "A":
[ndbd]
# (one [ndbd] section per data node)
hostname=192.168.0.30 # Hostname or IP address
datadir=/usr/local/mysql/data # Directory for this data node's data files

# Options for data node "B":
[ndbd]
hostname=192.168.0.40 # Hostname or IP address
datadir=/usr/local/mysql/data # Directory for this data node's data files

# SQL node options:
[mysqld]
hostname=192.168.0.20 # Hostname or IP address
# (additional mysqld connections can be
# specified for this node for various
# purposes such as running ndb_restore)

[root@www mysql-cluster]# cp bin/ndb_mgm* /usr/local/bin

4,配置MySQL server (SQL) node:

创建 /etc/my.cnf并添加下面的内容
#ptions for mysqld process:
[mysqld]
ndbcluster # run NDB storage engine
ndb-connectstring=192.168.0.10 # location of management server

# Options for ndbd process:
[mysql_cluster]
ndb-connectstring=192.168.0.10 # location of management server

5,配置 Data (NDBD) node "A":
创建/etc/my.cnf文件,并添加下面的内容
#ptions for mysqld process:
[mysqld]
ndbcluster # run NDB storage engine
ndb-connectstring=192.168.0.10 # location of management server

# Options for ndbd process:
[mysql_cluster]
ndb-connectstring=192.168.0.10 # location of management server

6,配置 Data (NDBD) node "B":
创建/etc/my.cnf文件,并添加下面的内容
#ptions for mysqld process:
[mysqld]
ndbcluster # run NDB storage engine
ndb-connectstring=192.168.0.10 # location of management server

# Options for ndbd process:
[mysql_cluster]
ndb-connectstring=192.168.0.10 # location of management server

7,启动Management节点:
[root@www local]# ndb_mgmd -f /var/lib/mysql-cluster/config.ini
2010-05-05 13:20:19 [MgmtSrvr] INFO -- NDB Cluster Management Server. mysql-5.1.44 ndb-7.1.3
2010-05-05 13:20:19 [MgmtSrvr] INFO -- Loaded config from '/usr/local/mysql/mysql-cluster/ndb_1_config.bin.1'

8,启动 Data (NDBD) node "A"及 Data (NDBD) node "B":
[root@www local]# /usr/local/mysql/bin/ndbd
2010-05-05 13:20:30 [ndbd] INFO -- Configuration fetched from '192.168.0.10:1186', generation: 1

9,启动 MySQL server (SQL) node
[root@www local]# /etc/init.d/mysql.server start

10,所有的节点都已经起动完成了
[root@www local]# ndb_mgm
-- NDB Cluster -- Management Client --
ndb_mgm> show
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=2 @192.168.0.30 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0, Master)
id=3 @192.168.0.40 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.0.10 (mysql-5.1.44 ndb-7.1.3)

[mysqld(API)] 1 node(s)
id=4 @192.168.0.20 (mysql-5.1.44 ndb-7.1.3)

  • dnf升级异界套要多久

    usb无线网卡什么类型的好: D-Link的 最好是带个天线的,不要那种又短又小的网卡,否则会造成上下行不平衡。DWA-192 支持最新的802.11AC 带天线增益 推荐这个。 ...

    929条评论 3780人喜欢 1832次阅读 480人点赞
  • 云盘哪个上传

    锂电池用USB充电的问题?: 买TP4057或者max1879充电吧~ ...

    986条评论 4895人喜欢 5983次阅读 260人点赞
  • 五帝钱什么样

    手机能直接usb插电源供电,完全不用电池么?: 如果是现在市场上的智能手机,几乎都不行。如果是以前那种按键的非智能手机,部分是可以的。MTK芯片的部分机型可以支持不用装电池就能刷机了,高通芯片的手机基本都可以。...

    764条评论 5327人喜欢 6308次阅读 452人点赞
  • i7哪个型号最好

    星辉法拉利遥控车usb充电电池是什么类型: 是锂电或者镍氢的,具体要看电池标注才知道 ...

    421条评论 6563人喜欢 1224次阅读 518人点赞
  • 五笔拼音输入法哪个好

    简易充电器USB-U:用5号电池给手机充电: 建议采用四结1. 2V充电电池或者四结1. 5V干电池串联构成4. 8V或者6V电压,再连接于USB插座的正、负极电源上。因为采用集成电路设计的DC/DC转换器,在转换时本身就消耗功率,对电池电量消耗很大,充电成本很...

    569条评论 1716人喜欢 5477次阅读 650人点赞