1.mysql连接管理
1)连接工具 mysql
2)常见的特定连接选项:
-u:指定用户 -p:指定密码 -h:指定主机 -P:指定端口 -S:指定搜sock -e:指定SQL
--protocol=那么:指定连接方式
3)第三方的连接工具
sqlyog navicat
应用程序连接mysql
注意: 需要加载对应语言程序的API
2.连接方式
1)socket连接
mysql -uroot -poldboy123 -S
3.mysql启动流程
4.mysql实例初始化配置
1)预编译:cmake去指定,硬编码到程序当中去
2)在命令行设定启动初始化配置
--skip-grant-tables --skip-networking
--datadir=/application/mysql/data
--basedir=/application/mysql
--defaults-file=/etc/my,cnf
--pid-file=/application/mysql/data/db01.pid
--socket=/application/mysql/data/mysql.sock
--user=mysql --port=3306
--log-error=/application/mysql/data/db01.err
3)初始化配置文件(/etc/my.cnf)
配置文件读取顺序:
/etc/my.cnf
/etc/mysql/my.cnf
$MYSQL_HOME/my.cnf(前提是在环境变量中定义了MYSQL_HOME变量)
defaults-extra-file (类似include)
~/my.cnf
5.mysql多实例配置
1.什么是多实例
1)多套后台进程+线程+内存结构
2)多个配置文件
a.多个端口
b.多个socket文件
c.多个日志文件
d.多个server_id
3)多套数据
2.多实例实战
#创建数据目录
[root@db01 ~]# mkdir -p /data/330{7..9}
#创建配置文件
[root@db01 ~]# touch /data/330{7..9}/my.cnf
#编辑3307配置文件
[root@db01 ~]# vim /data/3307/my.cnf
[mysqld]
basedir=/application/mysql
datadir=/data/3307/data
socket=/data/3307/mysql.sock
log_error=/data/3307/mysql.log
log-bin=/data/3307/mysql-bin
server_id=7
port=3307
[client]
socket=/data/3307/mysql.sock
#编辑3308配置文件
[root@db01 ~]# vim /data/3308/my.cnf
[mysqld]
basedir=/application/mysql
datadir=/data/3308/data
socket=/data/3308/mysql.sock
log_error=/data/3308/mysql.log
log-bin=/data/3308/mysql-bin
server_id=8
port=3308
[client]
socket=/data/3308/mysql.sock
#编辑3309配置文件
[root@db01 ~]# vim /data/3309/my.cnf
[mysqld]
basedir=/application/mysql
datadir=/data/3309/data
socket=/data/3309/mysql.sock
log_error=/data/3309/mysql.log
log-bin=/data/3309/mysql-bin
server_id=9 port=3309
[client]
socket=/data/3309/mysql.sock
#初始化3307数据
[root@db01 ~]#/application/mysql/scripts/mysql_install_db \
--user=mysql \
--defaults-file=/data/3307/my.cnf \
--basedir=/application/mysql
--datadir=/data/3307/data
#初始化3308数据
[root@db01 ~]#/application/mysql/scripts/mysql_install_db \
--user=mysql \ --defaults-file=/data/3308/my.cnf \
--basedir=/application/mysql
--datadir=/data/3308/data
#初始化3309数据 [root
@db01 ~]#/application/mysql/scripts/mysql_install_db \
--user=mysql \ --defaults-file=/data/3309/my.cnf \
--basedir=/application/mysql
--datadir=/data/3309/data
#修改目录权限
[root@db01]# chown -R mysql.mysql /data/330*
#启动多实例
[root@db01]# mysqld_safe
--defaults-file=/data/3307/my.cnf &
[root@db01]# mysqld_safe --defaults-file=/data/3308/my.cnf &
[root@db01]# mysqld_safe --defaults-file=/data/3309/my.cnf &
#查看server_id
[root@db01]# mysql -S /data/3307/mysql.sock -e "show variables like 'server_id'"
[root@db01]# mysql -S /data/3308/mysql.sock -e "show variables like 'server_id'"
[root@db01]# mysql -S /data/3309/mysql.sock -e "show variables like 'server_id'"