关于mysql 共享锁和排他锁 互斥问题?

关于mysql 共享锁和排他锁 互斥问题?,第1张

您好,你的问题,我之前好像也遇到过,以下是我原来的解决思路和方法,希望能帮助到你,若有错误,还望见谅!有两种模式的行锁:1)共享锁:允许一个事务去读一行,阻止其他事务获得相同数据集的排他锁。(Select*fromtable_namewherelockinsharemode)2)排他锁:允许获得排他锁的事务更新数据,阻止其他事务取得相同数据集的共享读锁和排他写锁。(select*fromtable_namewhere..forupdate),非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!

一、启动mysql服务

(1) rpm方式安装的mysql

-设置自动启动

#ntsysv --level 3

-手工启动

#service mysqld start

(2) 编译安装的mysql

-设置自动启动

#vi /etc/rc.d/rc.local

.......

/usr/local/mysql/bin/mysqld_safe&

........

-手工启动

#/usr/local/mysql/bin/mysqld_safe&

查看文章

mysql服务器(一)2009-06-15 11:18mysql服务器

一. 认识和安装mysql

1. 认识mysql

(1) mysql是一种网络数据库服务器产品

(2) mysql是开源的免费的

(3) mysql是关系型数据库管理系统,支持SQL.

(4) mysql无溢出漏洞

(5) mysql提供丰富的API

(6) mysql提供丰富的数据类型

(7) mysql具较强的移值性

2. 安装mysql软件

(1) rpm安装方式

#rpm -ivh perl-CGI....

perl-DBI....

perl-DBD-MySQL.....

mysq-....

mysql-server....

mysql-devel.....

(2) 编译安装方式

#groupadd mysql

#useradd -g mysql mysql

#tar -xzvf mysql-4.1.19.tar.gz

#cd mysql-4.1.19

#./configure --prefix=/usr/local/mysql

#make

#make install

#cp support-files/my-medium.cnf /etc/my.cnf

#cd /usr/local/mysql

#bin/mysql_install_db --user=mysql

#chown -R root .

#chown -R mysql var

#chgrp -R mysql .

3. 启动mysql服务

(1) rpm方式安装的mysql

-设置自动启动

#ntsysv --level 3

-手工启动

#service mysqld start

(2) 编译安装的mysql

-设置自动启动

#vi /etc/rc.d/rc.local

.......

/usr/local/mysql/bin/mysqld_safe&

........

-手工启动

#/usr/local/mysql/bin/mysqld_safe&

二、mysql的管理

1. 如何连接mysql服务器

(1) Linux客户机

#mysql [-h服务器地址] [-u用户名] [-p口令] [数据库名]

实例:

#mysql

mysql>

#mysql -h192.168.3.1 -uadmin -plinux

mysql>

(2) Windows客户机

-利用第三方mysql客户端软件

-利用浏览器连接(服务器必须安装web管理平台,如:phpmyadmin/webmin)

注:webmin的安装方法

#tar -xzvf webmin-1.25.tar.gz

#cd webmin-1.25

#./setup.sh

2. 数据库管理

(1) 认识mysql的数据库

-mysql服务器默认建立两个数据库,分别是mysql和test其中mysql是系统数据库test是学习数据库

-mysql服务器上的每个数据库都会在相应路径中建立与库同名的目录

-每个数据库可包含若干张表,每张表由*.frm、*.MYD和*.MYI文件构成

(2) 创建数据库

#mysql

mysql>create database 数据库名

实例:

mysql>create database dbinfo

(3) 查看服务器上已创建的数据库

#mysql

mysql>show databases

(4) 打开数据库

#mysql

mysql>use 数据库名;

实例:

mysql>use db1

(5) 删除数据库

#mysql

mysql>drop database 数据库名

实例:

mysql>drop database dbinfo

3. 数据表的管理

(1) mysql提供的数据类型

-数字型

TINYINT 1字节

SMALLINT 2字节

MEDIUMINT 3B

INT 4B

BIGINT 8B

FLOAT[(M,D)] 4B

DOUBEL[(M,D)] 8B

DECIMAL(M,D)

-字符串型

char(M)

varchar(M)

tinytext

text

mediumtext

longtext

enum('..',...)

set(....)

-日期时间型

date

datetime

time

(2) 创建表

#mysql

mysql>use 数据库

mysql>create table 表名 (

列名 数据类型 属性/约束

.......

.....

) 表选项

列属性/约束:

null/not null 是否允许为null

default 值 定义列的默认值

primary key 定义主键

check 表达式 定义列的取值范围

REFERENCES 表名(列名) 定义外部键

表选项:

TYPE=HEAP/ISAM/MYISAM/INNOBDB/BDB/MERGE //定义数据表引擎类型

实例:

mysql>use db1

mysql>create table users (

->id varchar(10) primary key,

->name varchar(20) not null,

->password varchar(30) not null) TYPE=MYISAM

(3) 查看数据库中已建立的表

#mysql

mysql>use 数据库

mysql>show tables

(4) 查看表的结构

#mysql

mysql>use 数据库

mysql>describe 表名

(5) 修改表的结构

#mysql

mysql>use 数据库

mysql>alter table 表名

add 列定义//添加列

|drop 列名//删除列

|add index 索引名 (列名) //添加索引

|drop index 索引名 //删除索引

|modify 列定义 //修改列的定义

|add primary key (列名) //添加主键

|drop primary key //删除主键

|rename 新表名 //修改表名称

实例:mysql>alter table users add memo text

(6) 向表中插入数据

#mysql

mysql>insert into 表名[(列名,...n)] values (值,...)

实例:

mysql>insert into users values ('0001','user1','linux','system admin')

(7) 查看表中数据

#mysql

mysql>select 列名 [as 别名] [,...n]|*|表达式

->from 表名[,...n]

->[where 条件表达式]

->[order by 列名]

->[group by 列名]

->[having 条件表达式]

实例:

mysql>select * from users

mysql>select user,password from users

mysql>select user,password from users where name='user1'

mysql>select * from users order by id desc

mysql>select 性别, count(*) as 人数 from 学生 group by 性别

(8) 删除表中数据

#mysql

mysql>delete from 表名 [where 条件表达式]

实例:

mysql>delete from users

mysql>delete from users where name='user1'

(9) 修改表中数据

#mysql

mysql>update 表名 set 列名=值 [where 条件表达式]

实例:

mysql>update users set password='132' where name='user1'

(10) 删除表

#mysql

mysql>drop table 表名

实例:

mysql>drop table users

1、 首先确保linux下mysql安装好,服务启动完之后,就可以开始连接数据库了。在终端输入“mysql -hlocalhost -uroot -p”,其中h参数是主机名,这里是本地就写localhost,也可以省略:

2、输入mysql的密码之后就登录了,也可以不输入密码登录,比如这里的root密码是mysql123456,可以直接输入“mysql -hlocalhost -uroot -pmysql123456”,此时就没有提示输入密码,直接进入mysql的命令行中了:

3、此时显示的就是mysql的命令行界面了,若要退出输入quit就可以退出了。以上就是linux中连接数据库的 *** 作:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7370015.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存