Edited, memorised or added to reading list

on 26-Aug-2020 (Wed)

Do you want BuboFlash to help you learning these things? Click here to log in or create user.

Flashcard 5729884704012

Tags
#Agile #Docs #Powershell #SQL
Question
Why SQL documentation ?
Answer
  • If someone changes some setting or configuration on one of your servers, how quickly will you know about it?
  • Do you have a list of databases with all their properties?
  • When do the SQL Server agent jobs run?
  • How would you find out the Edition of each of your SQL Server instances, and the hardware on which it is running?
  • Do you know all the SQL Server logins and users with all their permissions?
  • If asked to setup a new server, in an identical configuration to an existing server, how quickly could you do it?

Good documentation gives you control over your environment, and is an effective communication tool. A few examples of situations where documentation is important:

  • Create baselines – gather performance information from your instance. A baseline can also be an initial configuration of your SQL Server instance installation.
  • Comparing different servers – server documentation allows you to enforce standards. If someone sets up a server in a non-standard fashion, or changes some setting, it could cause unexpected behavior and/or performances issues, so you need to know about it (and ideally be alerted to the change)
  • Database settings – creating an overview of all the databases with their properties makes it possible to see if the database has grown. Another reason would be to see if there are settings in the databases which are non-standard. For instance, which database run in SIMPLE recovery mode, which databases have a page verification option set to NONE or TORN_PAGE_DETECTION.
  • License audits – Documenting your SQL Server editions and hardware will ensure that your organization is always license compliant.
  • Security audits – If you work in a bank or other financial institution you are probably familiar with security audits. Can you show the auditor a list of all the people who have access to the database? Has there been any change in the last 6 months? How do you prove you are in control?
  • Troubleshooting -the first question you ask in response to a performance issue is often “what changed?” It’s much harder to troubleshoot a performance issue without any server documentation.


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
y formatted Excel spreadsheet. Why document your servers If you’re wondering why you need to make the effort to automate the documentation of your servers, ask yourself the following questions: <span>If someone changes some setting or configuration on one of your servers, how quickly will you know about it? Do you have a list of databases with all their properties? When do the SQL Server agent jobs run? How would you find out the Edition of each of your SQL Server instances, and the hardware on which it is running? Do you know all the SQL Server logins and users with all their permissions? If asked to setup a new server, in an identical configuration to an existing server, how quickly could you do it? Good documentation gives you control over your environment, and is an effective communication tool. A few examples of situations where documentation is important: Create baselines – gather performance information from your instance. A baseline can also be an initial configuration of your SQL Server instance installation. Comparing different servers – server documentation allows you to enforce standards. If someone sets up a server in a non-standard fashion, or changes some setting, it could cause unexpected behavior and/or performances issues, so you need to know about it (and ideally be alerted to the change) Database settings – creating an overview of all the databases with their properties makes it possible to see if the database has grown. Another reason would be to see if there are settings in the databases which are non-standard. For instance, which database run in SIMPLE recovery mode, which databases have a page verification option set to NONE or TORN_PAGE_DETECTION. License audits – Documenting your SQL Server editions and hardware will ensure that your organization is always license compliant. Security audits – If you work in a bank or other financial institution you are probably familiar with security audits. Can you show the auditor a list of all the people who have access to the database? Has there been any change in the last 6 months? How do you prove you are in control? Troubleshooting -the first question you ask in response to a performance issue is often “what changed?” It’s much harder to troubleshoot a performance issue without any server documentation. What Needs Documenting? At a minimum, I’d say you need to document the following for every server: Machine information Memory – Total memory, available memory. CPU – Amount of CPUs, amo







Flashcard 5729886539020

Tags
#Agile #Docs #Powershell #SQL
Question
What to document for SQL SRV ?
Answer

At a minimum, I’d say you need to document the following for every server:

  • Machine information
    • Memory – Total memory, available memory.
    • CPU – Amount of CPUs, amount of cores, architecture
    • OS – Architecture, version, service pack, build
    • Disks – Disk, name, size, free space
  • SQL Server engine
    • Configuration – Min and max memory, clr enabled, xp_cmdshell enabled
    • Edition – Edition, build
    • Collation – Default collation
    • Logins – Present logins with server roles involved
  • Databases
    • Size – Size of database files, space available
    • File configuration – Location of files. Different drives for data and log?
    • Growth configuration – Growth settings for data and log files.
    • Collation – Collation of the database. Is it different from the default server collation?
    • Users – Created users and their database roles.
  • SQL Agent
    • Jobs – The job and job steps.
    • Schedules – Schedules for jobs, next run date and time.


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
first question you ask in response to a performance issue is often “what changed?” It’s much harder to troubleshoot a performance issue without any server documentation. What Needs Documenting? <span>At a minimum, I’d say you need to document the following for every server: Machine information Memory – Total memory, available memory. CPU – Amount of CPUs, amount of cores, architecture OS – Architecture, version, service pack, build Disks – Disk, name, size, free space SQL Server engine Configuration – Min and max memory, clr enabled, xp_cmdshell enabled Edition – Edition, build Collation – Default collation Logins – Present logins with server roles involved Databases Size – Size of database files, space available File configuration – Location of files. Different drives for data and log? Growth configuration – Growth settings for data and log files. Collation – Collation of the database. Is it different from the default server collation? Users – Created users and their database roles. SQL Agent Jobs – The job and job steps. Schedules – Schedules for jobs, next run date and time. Of course, you might need more information depending on your own environment like clustering, replication or mirroring. PowerShell can retrieve all of this information and a lot more, u







Flashcard 5729888374028

Tags
#Agile #Docs #Powershell #SQL
Question
What does PSSQLLIB gather about SQL SRV ?
Answer

PSSQLLIB: Custom PowerShell Functions to Return Server Information

I’d rather program for a few hours than do anything twice, so I created a PowerShell module called PSSQLLib that has all the functions necessary to retrieve the following information:

  • Host hard disk information
  • Host hardware
  • Host operating system information
  • SQL Server instance settings
  • SQL Server instance configuration settings
  • SQL Server login server privileges
  • SQL Server databases
  • SQL Server database files
  • SQL Server database users
  • SQL Server database user privileges
  • SQL Server Agent jobs
  • SQL Server disk latencies


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
odule that I built to gather the required SQL Server metrics, and ExcelPSLib, a PowerShell module avaible on CodePlex, for exporting our data to Excel. Let’s take a brief look at each, in turn. <span>PSSQLLIB: Custom PowerShell Functions to Return Server Information I’d rather program for a few hours than do anything twice, so I created a PowerShell module called PSSQLLib that has all the functions necessary to retrieve the following information: Host hard disk information Host hardware Host operating system information SQL Server instance settings SQL Server instance configuration settings SQL Server login server privileges SQL Server databases SQL Server database files SQL Server database users SQL Server database user privileges SQL Server Agent jobs SQL Server disk latencies Load-Assembly Before you can use SMO you have to load it into your environment so PSSQLLIB contains a function called “Load-Assembly” that if supplied the assembly name will load SMO, a







Flashcard 5729891781900

Tags
#Agile #Docs #Powershell #SQL
Question
How to load Load-Assembly ?
Answer
function Load-Assembly
		{
		    <# 
		    .SYNOPSIS
		        Check if a assembly is loaded and load it if necessary
		    .DESCRIPTION
		        The script will check if an assembly is already loaded.
		        If it isn't already loaded it will try to load the assembly
		    .PARAMETER  name
		        Full name of the assembly to be loaded
		    .EXAMPLE
		        Load-Assembly -name 'Microsoft.SqlServer.SMO'
		    .INPUTS
		    .OUTPUTS
		    .NOTES
		    .LINK
		    #>
		     param(
		          [Parameter(Mandatory = $true)][ValidateNotNullOrEmpty()]
		          [String] $name
		     )
		     
		     if(([System.AppDomain]::Currentdomain.GetAssemblies() | where {$_ -match $name}) -eq $null)
		     {
		        try{
		            [System.Reflection.Assembly]::LoadWithPartialName($name) | Out-Null
		        } 
		        catch [System.Exception]
		        {
		            Write-Host "Failed to load assembly!" -ForegroundColor Red
		            Write-Host "$_.Exception.GetType().FullName, $_.Exception.Message" -ForegroundColor Red
		        }
		     }
	} 


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
d the assembly name will load SMO, and any other kind of assembly, assuming it’s not already loaded. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 <span>function Load-Assembly { <# .SYNOPSIS Check if a assembly is loaded and load it if necessary .DESCRIPTION The script will check if an assembly is already loaded. If it isn't already loaded it will try to load the assembly .PARAMETER name Full name of the assembly to be loaded .EXAMPLE Load-Assembly -name 'Microsoft.SqlServer.SMO' .INPUTS .OUTPUTS .NOTES .LINK #> param( [Parameter(Mandatory = $true)][ValidateNotNullOrEmpty()] [String] $name ) if(([System.AppDomain]::Currentdomain.GetAssemblies() | where {$_ -match $name}) -eq $null) { try{ [System.Reflection.Assembly]::LoadWithPartialName($name) | Out-Null } catch [System.Exception] { Write-Host "Failed to load assembly!" -ForegroundColor Red Write-Host "$_.Exception.GetType().FullName, $_.Exception.Message" -ForegroundColor Red } } } Listing 1: Load-Assembly A Typical PSSQLLIB function: Get-SQLServerPrivileges Most of the functions in PSSQLLIB use properties of the SMO server object. A few of the functions use T-SQL







Flashcard 5729894403340

Tags
#Agile #Docs #Powershell #SQL
Question
How does Get-SQLServerPrivileges function return the privileges for logins ?
Answer
function Get-SQLServerPrivileges
		{
		    <# 
		    .SYNOPSIS
		        Returns each server login with their server roles
		    .DESCRIPTION
		        This function will return all the logins on the database server
		        and check whether they are member of a server role.
		    .PARAMETER  instance
		        This is the instance that needs to be connected
		    .EXAMPLE
		        Get-SQLServerPrivileges "SQL01"
		    .EXAMPLE
		        Get-SQLServerPrivileges "SQL01\INST01"
		    .EXAMPLE
		        Get-SQLServerPrivileges -inst "SQL01\INST01"
		    .INPUTS
		    .OUTPUTS
		        System.Array
		    .NOTES
		    .LINK
		    #>
		    
		    param
		    (
		        [Parameter(Mandatory = $true, Position=1)]
		        [ValidateNotNullOrEmpty()]
		        [string]$inst = $null
		    )
		    
		    # Check if assembly is loaded
		    Load-Assembly -name 'Microsoft.SqlServer.SMO'
		 
		    # Check if the instance object is already initiated
		    if($server -eq $null)
		    {
		        try{
		            $server = New-Object ('Microsoft.SqlServer.Management.Smo.Server') $inst
		        }
		        catch [Exception]
		        {
		            Write-Host "$_.Exception.GetType().FullName, $_.Exception.Message" -ForegroundColor Red
		        }
		    }
		 
		    # Create the result array
		    $result = @()
		 
		    # Create the array for the server roles
		    $serverRoles = @()
		 
		    # Get all the logins
		    $logins = $server.Logins
		 
		    # Loop through the logins
		    foreach($login in $logins)
		    {
		        
		        if(($login.Name -notlike "##*"))
		        {
		            # Get all the server
		            $serverRoles = ($login.ListMembers()) -join ","
		 
		            # Make the result
		            if($serverRoles.Count -gt 1)
		            {
		                $result += $login | Select `
		                             Name,LoginType,CreateDate,DateLastModified,IsDisabled,`
		                             @{N="ServerRoles";E=([string]::Join(",", $serverRoles))} | Sort-Object Name 
		            }
		            else
		            {
		                $result += $logn | Select `
		                             Name,LoginType,CreateDate,DateLastModified,IsDisabled,`
		                             @{N="ServerRoles";E={$serverRoles}} | Sort-Object Name 
		            }
		 
		            # Clear the array
		            $serverRoles = @()
		        }
		    }
		 
		    return $result
		 
	} 

[default - edit me]


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
B function: Get-SQLServerPrivileges Most of the functions in PSSQLLIB use properties of the SMO server object. A few of the functions use T-SQL queries to retrieve the data. Listing 2 shows the <span>Get-SQLServerPrivileges function, to return the privileges for logins. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65







Flashcard 5729897549068

Tags
#Agile #Docs #Powershell #SQL
Question
Explain the param() block of the Get-SQLServerPrivileges function ?
Answer

. At the start of the function, we supply a parameter with the name of the SQL Server instance, and call the Load-Assembly function with the name of the assembly:

param
		    (
		        [Parameter(Mandatory = $true, Position=1)]
		        [ValidateNotNullOrEmpty()]
		        [string]$inst = $null
		    )
		 
# Check if assembly is loaded
Load-Assembly -name 'Microsoft.SqlServer.SMO' 


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
rRoles}} | Sort-Object Name } # Clear the array $serverRoles = @() } } return $result } Listing 2: Get-SQLServerPrivileges For those of you who are new to PowerShell, let’s step through the code<span>. At the start of the function, we supply a parameter with the name of the SQL Server instance, and call the Load-Assembly function with the name of the assembly: 1 2 3 4 5 6 7 8 9 param ( [Parameter(Mandatory = $true, Position=1)] [ValidateNotNullOrEmpty()] [string]$inst = $null ) # Check if assembly is loaded Load-Assembly -name 'Microsoft.SqlS







Flashcard 5729901481228

Tags
#Agile #Docs #Powershell #SQL
Question
How to begoin to retrieve any information from the server [CONTEXT: Get-SQLServerPrivileges function]?
Answer

Before we can retrieve any information from the server we have to create a SMO Server object:

  # Check if the instance object is already initiated
if($server -eq $null)
  {
    try{
	  $server = New-Object ('Microsoft.SqlServer.Management.Smo.Server') $inst
	}
	catch [Exception]
	{
	  Write-Host "$_.Exception.GetType().FullName, $_.Exception.Message" -ForegroundColor Red
	}
}


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
2 3 4 5 6 7 8 9 param ( [Parameter(Mandatory = $true, Position=1)] [ValidateNotNullOrEmpty()] [string]$inst = $null ) # Check if assembly is loaded Load-Assembly -name 'Microsoft.SqlServer.SMO' <span>Before we can retrieve any information from the server we have to create a SMO Server object: 1 2 3 4 5 6 7 8 9 10 11 # Check if the instance object is already initiated if($server -eq $null) { try{ $server = New-Object ('Microsoft.SqlServer.Management.Smo.Server') $inst } catch







Flashcard 5729903316236

Tags
#Agile #Docs #Powershell #SQL
Question
[default - edit me]
Answer
Two arrays are declared, one to hold the end result and one to iterate through the server roles:


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
{ try{ $server = New-Object ('Microsoft.SqlServer.Management.Smo.Server') $inst } catch [Exception] { Write-Host "$_.Exception.GetType().FullName, $_.Exception.Message" -ForegroundColor Red } } <span>Two arrays are declared, one to hold the end result and one to iterate through the server roles: 1 2 3 4 5 # Create the result array $result = @() # Create the array for the server roles $serverRoles = @() To get the SQL Server logins, and associated server roles, we call the Login







Flashcard 5729904364812

Tags
#Agile #Docs #Powershell #SQL
Question

CONTEXT: Get-SQLServerPrivileges

How to iterate through the login values ?

Answer
 # Get all the logins
$logins = $server.Logins
foreach($login in $logins)
{
  if(($login.Name -notlike "##*"))
  {
    # Get all the server
    $serverRoles = ($login.ListMembers()) -join ","
		 
	# Make the result
	if($serverRoles.Count -gt 1)
	{
	  $result += $login | Select `
	  Name,LoginType,CreateDate,DateLastModified,IsDisabled,`
	  @{N="ServerRoles";E=([string]::Join(",", $serverRoles))} | Sort-Object Name 
	}
	else
    {
	  $result += $login | Select `
	  Name,LoginType,CreateDate,DateLastModified,IsDisabled,`
	  @{N="ServerRoles";E={$serverRoles}} | Sort-Object Name 
	}
		 
    # Clear the array
	  $serverRoles = @()
    }
}
		 
return $result
		 
} 

To get the SQL Server logins, and associated server roles, we call the Logins property from the server object and save the values to the $logins variable, and then iterate through these login values (excluding system accounts, which start with “##”). If the login is a member of Windows group we create a comma separated list of all the server roles of which that group is a member. Finally, we clear the array of the server roles to be sure the data is correct, and then return the result.


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
re declared, one to hold the end result and one to iterate through the server roles: 1 2 3 4 5 # Create the result array $result = @() # Create the array for the server roles $serverRoles = @() <span>To get the SQL Server logins, and associated server roles, we call the Logins property from the server object and save the values to the $logins variable, and then iterate through these login values (excluding system accounts, which start with “##”). If the login is a member of Windows group we create a comma separated list of all the server roles of which that group is a member. Finally, we clear the array of the server roles to be sure the data is correct, and then return the result. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 # Get all the logins $logins = $server.Logins foreach($login in $logins) { if(($login.Name -notlike "







Flashcard 5729906199820

Tags
#Agile #Docs #Powershell #SQL
Question
Which params are used for generating docs in function Generate-Documentation() ?
Answer

The idea is to automate the documentation of multiple SQL Server instances. To make this possible I’ll create a function that takes an argument for the server name, the instance name, and the destination to which to export the Excel file.

function Generate-Documentation()
{
  param(
   [Parameter(Mandatory=$true, Position=1)]
   [ValidateNotNullOrEmpty()]
   [string]$server,
   [Parameter(Mandatory=$true, Position=2)]
   [string]$instance = '',
   [Parameter(Mandatory=$true, Position=3)]
   [ValidateNotNullOrEmpty()]
   [string]$destination
) 


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
ses the functions defined in PSSQLLib to retrieve the information, and uses ExcelPSLib to export it to a nicely formatted Excel spreadsheet. Setting the target server and output file properties <span>The idea is to automate the documentation of multiple SQL Server instances. To make this possible I’ll create a function that takes an argument for the server name, the instance name, and the destination to which to export the Excel file. The code below shows the start of the function 1 2 3 4 5 6 7 8 9 10 11 12 function Generate-Documentation() { param( [Parameter(Mandatory=$true, Position=1)] [ValidateNotNullOrEmpty()]







Flashcard 5729908034828

Tags
#Agile #Docs #Powershell #SQL
Question
How to we catch name erros fpr the server instance ?
Answer

The name of the default instance can be “MSSQLSERVER” or be left out. To make sure the server object is created in the same way for both situation the following code will check the name and declare the target variable.

# Make up the target in case we have a default instance
if(($instance -eq '') -or (($instance).ToUpper() -eq 'MSSQLSERVER'))
{
  $target = $server
} 
else
{
  $target = "$server\$instance"
} 


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
ateNotNullOrEmpty()] [string]$server, [Parameter(Mandatory=$true, Position=2)] [string]$instance = '', [Parameter(Mandatory=$true, Position=3)] [ValidateNotNullOrEmpty()] [string]$destination ) <span>The name of the default instance can be “MSSQLSERVER” or be left out. To make sure the server object is created in the same way for both situation the following code will check the name and declare the target variable. 1 2 3 4 5 6 7 8 9 # Make up the target in case we have a default instance if(($instance -eq '') -or (($instance).ToUpper() -eq 'MSSQLSERVER')) { $target = $server } else { $target = "$s







Flashcard 5729909869836

Tags
#Agile #Docs #Powershell #SQL
Question

How to specifies the details of the output Excel file ?

- server name

- instance name

- timestamp

Answer

The next section of code specifies the details of the output Excel file. It will take the name of the server, the name of the instance and put a timestamp on the file. The timestamp is in the file is important to know when the file was created especially when you document your servers regularly.

# Create timestamp
$timestamp = Get-Date -f yyyyddMMHHmmss
		 
# Set the destination
$outputFile = $destination + '\MachineInformation_' + ($server).ToUpper() + '_' + ($instance).ToUpper() + '_' + $timestamp + '.xlsx' 


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill
Documenting SQL Server with PowerShell - Simple Talk
6 7 8 9 # Make up the target in case we have a default instance if(($instance -eq '') -or (($instance).ToUpper() -eq 'MSSQLSERVER')) { $target = $server } else { $target = "$server\$instance" } <span>The next section of code specifies the details of the output Excel file. It will take the name of the server, the name of the instance and put a timestamp on the file. The timestamp is in the file is important to know when the file was created especially when you document your servers regularly. 1 2 3 4 5 # Create timestamp $timestamp = Get-Date -f yyyyddMMHHmmss # Set the destination $outputFile = $destination + '\MachineInformation_' + ($server).ToUpper() + '_' + ($instance).







#biology #neurology #sleep
Even the reports from the Guinness World Record attempt at sleeplessness (Randy Gardner's awakathon in 1964 lasted 11 days) trivialized the effects of sleeplessness

statusnot read reprioritisations
last reprioritisation on reading queue position [%]
started reading on finished reading on

Good sleep, good learning, good life
does not make people die (at least not immediately). It does make them feel miserable, but the ease with which we recover by getting just one good night of sleep seems to make sleep look cheap. <span>Even the reports from the Guinness World Record attempt at sleeplessness (Randy Gardner's awakathon in 1964 lasted 11 days) trivialized the effects of sleeplessness. Many books on psychiatry and psychology still state that there aren't any significant side effects to prolonged sleeplessness! This is false! The Guinness Book of Records has since wit




Flashcard 5729931103500

Tags
#biology #neurology #sleep
Question
Randy Gardner's sleep-less world record lasted...
Answer
11 days


statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill

Parent (intermediate) annotation

Open it
Even the reports from the Guinness World Record attempt at sleeplessness (Randy Gardner's awakathon in 1964 lasted 11 days) trivialized the effects of sleeplessness

Original toplevel document

Good sleep, good learning, good life
does not make people die (at least not immediately). It does make them feel miserable, but the ease with which we recover by getting just one good night of sleep seems to make sleep look cheap. <span>Even the reports from the Guinness World Record attempt at sleeplessness (Randy Gardner's awakathon in 1964 lasted 11 days) trivialized the effects of sleeplessness. Many books on psychiatry and psychology still state that there aren't any significant side effects to prolonged sleeplessness! This is false! The Guinness Book of Records has since wit







#biology #neurology #sleep
Nearly everyone has pulled an all nighter once upon a time. Even if this is often an unpleasant experience, it nearly always ends up with a 100% recovery after a single night of solid sleep. It is therefore a bit surprising to know that that a week or two of sleep deprivation can result in death! Sleep researchers constructed a cruel contraption that would wake up rats as soon as they fell asleep. This contraptions showed that it takes an average of 3 weeks to kill a rat by sleep deprivation (or some 5 months by REM sleep deprivation alone)(Rechtschaffen 1998[7]). Dr Siegel demonstrated brain damage in sleep-deprived rats (Siegel 2003[8]). Due to an increase in the level of glucocorticoids, neurogenesis in some portions of the brain is inhibited by lack of sleep

statusnot read reprioritisations
last reprioritisation on reading queue position [%]
started reading on finished reading on

Good sleep, good learning, good life
ecessary. Otherwise my writing effort would not be needed. Good sleep makes us nicer, smarter, and saves lives! See: 10 Things to Hate About Sleep Loss from WebMD. If you do not sleep, you die! <span>Nearly everyone has pulled an all nighter once upon a time. Even if this is often an unpleasant experience, it nearly always ends up with a 100% recovery after a single night of solid sleep. It is therefore a bit surprising to know that that a week or two of sleep deprivation can result in death! Sleep researchers constructed a cruel contraption that would wake up rats as soon as they fell asleep. This contraptions showed that it takes an average of 3 weeks to kill a rat by sleep deprivation (or some 5 months by REM sleep deprivation alone)(Rechtschaffen 1998[7]). Dr Siegel demonstrated brain damage in sleep-deprived rats (Siegel 2003[8]). Due to an increase in the level of glucocorticoids, neurogenesis in some portions of the brain is inhibited by lack of sleep[9]. In short, sleep deprivation is very bad for the health of the brain. Sleep deprivation is a well-known form of torture. Yet, for ethical reasons, the rat experiment could not be rep




#biology #neurology #sleep

It is impossible to quantify the contribution of those three factors to the fatal outcome of prolonged sleep deprivation:

  1. network malfunction, or
  2. secondary effects of sleep protection program, or
  3. continuous catabolic state.

statusnot read reprioritisations
last reprioritisation on reading queue position [%]
started reading on finished reading on

Good sleep, good learning, good life
did not help much in preventing death from those infections. Sleep deprived rats would die anyway. The infection might speed up death that was otherwise inevitable. Why do we die without sleep? <span>It is impossible to quantify the contribution of those three factors to the fatal outcome of prolonged sleep deprivation: network malfunction, or secondary effects of sleep protection program, or continuous catabolic state. Even though the latter two could possibly be remedied pharmacologically, there is no way around network remolding in sleep. Researchers who hope to find a remedy against sleep are plodd




#biology #neurology #sleep

There are two components of sleepiness that drive you to bed:

  • circadian component - sleepiness comes back to us in cycles which are usually about one day long
  • homeostatic component - sleepiness increases with the length of time we stay awake

Only a combination of these two components determines the optimum time for sleep. Most importantly, you should remember that even strong sleepiness resulting from the homeostatic component may not be sufficient to get good sleep if the timing goes against the greatest sleep propensity determined by the circadian component.

statusnot read reprioritisations
last reprioritisation on reading queue position [%]
started reading on finished reading on

Good sleep, good learning, good life
rrational shift-work patterns, sleeping pills, alcohol, caffeine, etc. For a chance to break out from unhealthy sleep habits, you need to understand the two-component model of sleep regulation. <span>There are two components of sleepiness that drive you to bed: circadian component - sleepiness comes back to us in cycles which are usually about one day long homeostatic component - sleepiness increases with the length of time we stay awake Only a combination of these two components determines the optimum time for sleep. Most importantly, you should remember that even strong sleepiness resulting from the homeostatic component may not be sufficient to get good sleep if the timing goes against the greatest sleep propensity determined by the circadian component. Circadian component There are around hundred known body functions that oscillate between maximum and minimum values in a day-long cycle. Because these functions take about a day's time




#biology #neurology #sleep

Yet some dramatic facts related to sleep deprivation have slowly come into light. Each year sleep disorders add $16 billion to national health-care costs (e.g. by contributing to high blood pressure and heart disease). That does not include accidents and lost productivity at work. For this, the National Commission on Sleep Disorders estimates that sleep deprivation costs $150 billion a year in higher stress and reduced workplace productivity[1]. 40% of truck accidents are attributable to fatigue and drowsiness, and there is an 800% increase in single vehicle commercial truck accidents between midnight and 8 am. Major industrial disasters have been attributed to sleep deprivation (Mitler et al. 1988[2])(incl. Three Mile Island, Chernobyl, the gas leak at Bhopal, Zeebrugge disaster, and the Exxon Valdez oil spill).

statusnot read reprioritisations
last reprioritisation on reading queue position [%]
started reading on finished reading on

Good sleep, good learning, good life
ift after over a year of campaigning for president, he answered without hesitation: 8 hours of sleep. The bad example of disrespect for sleep comes from the most important people in the nation! <span>Yet some dramatic facts related to sleep deprivation have slowly come into light. Each year sleep disorders add $16 billion to national health-care costs (e.g. by contributing to high blood pressure and heart disease). That does not include accidents and lost productivity at work. For this, the National Commission on Sleep Disorders estimates that sleep deprivation costs $150 billion a year in higher stress and reduced workplace productivity[1]. 40% of truck accidents are attributable to fatigue and drowsiness, and there is an 800% increase in single vehicle commercial truck accidents between midnight and 8 am. Major industrial disasters have been attributed to sleep deprivation (Mitler et al. 1988[2])(incl. Three Mile Island, Chernobyl, the gas leak at Bhopal, Zeebrugge disaster, and the Exxon Valdez oil spill). It has been known since the 1920s that sleep improves recall in learning. However, only at the turn of the millennium, research by Dr Robert Stickgold, Associate Professor of Psychiatry