Six methods to automatically Discover SQL Server instances (2022)

DBAs have plenty of day-to-day tasks to do as part of administration, but one overarching task is managing the entire SQL Server environment. To do this, the full SQL Server estate must be discovered and inventoried. To accomplish that all SQL Server instances, that exist, must be found.


A system inventory is always the go-to document for vital information for everyone whether you’re a consultant or an in-house DBA; you must have a reliable inventory of the servers that you manage. The inventory can be defined in different ways since it takes many different dimensions but at its core, it’s an aggregation of information about the system installation topography. However, often, we tend to forget to update the inventory when we add a server or update software. We deploy new servers, decommission existing servers, keeping track of servers in the environment, upgrade process, patching, migration from physical to virtual machines, moving to the cloud, license validation, IT forecasting and many more such areas strongly rely on the inventory list.


In this guide, we’ll talk about the auto discovering SQL Server information using the following technologies

  • SQL Providers
  • WMI (Windows Management Instrumentation)
  • Windows registry hives
  • and SMO (SQL Server Management Objects)

If you’re familiar with PowerShell object usage and different kinds of available class libraries, the steps are fairly easy to understand. These classes include information about the system; they are like a mini database, of the different hardware and software characteristics of the machine.

We will load the required libraries to fetch or discover SQL instances at every section of this article. And then, we’ll go about customizing additional classes that are not available right out of the box.

  • Note: There are plenty of third-party tools such as Microsoft MAPI toolkit, ApexSQL Discover, SQL Ping3, and several custom scripts are available in the market to discover the SQL Server instances automatically. These available third-party tools which make the life of a DBA easier when it comes to configuration management.


  1. Windows PowerShell 3.0 and above
  2. Permissions required to
    • query/access all SQL instances
    • read input file
    • write output files

Get-ChildItem cmdlet

PowerShell provider exposes the database objects in an SQL Server instance in a defined structure that is similar to a file system.

  • Note: The SQL Server module must be installed from the PowerShell Gallery. The following command gets the SQL Server module from PowerShell Gallery.


Import-Module -Name SQLServer

To list all the SQL instances, navigate to the root directory and run the Get-Childitem to get the list.


'hqdbt01'| Foreach-Object {Get-ChildItem -Path "SQLSERVER:\SQL\$_"}

Six methods to automatically Discover SQL Server instances (1)

  • Note: The path SQLSERVER:\SQL\<ServerName> has all the installed SQL instances of the listed server.

Next, list the properties such as Name, DisplayName, ServerName, InstanceName of the listed SQL Instances.


'hqdbt01'|% {Get-ChildItem -Path "SQLSERVER:\SQL\$_"}|Select-Object -Property @{label='ServerName';expression={$_.ComputerNamePhysicalNetBIOS}}, Name, DisplayName, InstanceName |Format-Table -AutoSize

(Video) DBA 173-Patching Or Updating AlwaysOn Availability group Replicas in SQL Server Best Practices

The Get-ChildItem cmdlet is used to list the SQL instances of the server. We can then pipe the output of the Get-ChildItem command to the Select-Object cmdlet, which selects Name, DisplayName, InstanceName and ServerName properties from the object returned by Get-ChildItem. The ServerName property is added using a hash table with Label and Expression. The value of the Expression is a script block that gets the ServerName property of each SQL instance from the ComputerNamePhysicalNetBIOS property.

In the following example, the cmdlets list all the database properties from the remote server hqdbt01 for the default instance.



'hqdbt01' |

ForEach-Object {Get-ChildItem -Path "SQLSERVER:\SQL\$_\DEFAULT\Databases"}

In the following output, we can see that the keyword DEFAULT is specified along with the databases folder.

Six methods to automatically Discover SQL Server instances (3)

In the following example, the cmdlets list all the database properties from the remote server hqdbt01 for the named instance SQL2017.



'hqdbt01' |

ForEach-Object {Get-ChildItem -Path "SQLSERVER:\SQL\$_\SQL2017\Databases"}

In the following output, we can see that the named instance SQL2017 is specified along with the databases folder.

Six methods to automatically Discover SQL Server instances (4)

  • Note: If the named SQL instance is down, the instance column will be empty.

Windows Registry Hives

In the following example, the PowerShell command displays the value name and data of each of the registry entries contained in the “Microsoft SQL Server” registry subkey.

(Video) Discover and Visualize Your SQL Server Environment

  • Note:
    1. By default, PowerShell drive named HKLM: is mapped to the “HKEY_LOCAL_MACHINE” hive of the registry.
    2. The easiest way to read remote SQL instances is by using Invoke-Command.










$SQLInstances = Invoke-Command -ComputerName hqdbt01,hqdbsp17 {

(Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server').InstalledInstances


foreach ($sql in $SQLInstances) {


ServerName = $sql.PSComputerName

InstanceName = $sql



An array of the SQL Server instances is listed as an input for the Invoke-Command. In this case, two SQL Server instances hqdbt01 and hqdbsp17 are listed. The second command uses the Get-ItemProperty command to retrieve the InstalledInstances property of the listed instances. The output is then stored in the variable $SQLInstances. Later the variable is further transformed through an iteration to display ServerName and InstanceName properties of the objects.

Six methods to automatically Discover SQL Server instances (5)

  • Note: [PSCustomObject] is very helpful to create structured stream of data. The [pscustomobject] is relatively much faster as it treats hashtables properties as objects.

In the following example, the input CSV file server_test.csv is read from a local drive. The file contains a list of servers.

PS P:\> Import-Csv -Path c:\server_test.csv

The output list the content of the CSV file c:\server_test.csv

Six methods to automatically Discover SQL Server instances (6)

Here is a PowerShell script that takes input and reads the SQL Server information from the registry.











$SQLInstances = Import-Csv C:\server_test.csv |% { Invoke-Command -ComputerName $_.ServerName {

(Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server').InstalledInstances



foreach ($sql in $SQLInstances) {


ServerName = $sql.PSComputerName

InstanceName = $sql



The field, ServerName, is read from the input file and then is piped to Invoke-Command to loop through all the servers. The registry entries are read from the remote servers and stored in variable for further processing. The assigned values are then processed to list the ServerName and InstanceName properties.

Six methods to automatically Discover SQL Server instances (7)

  • Note: This method ‘Reading registry subkeys’ is relatively much faster than other methods.

Get-Service cmdlet

Get-Service is PowerShell cmdlet that lists all the registered Windows services either from a local or a remote server.

(Video) Sql DBA Batch 46 Class 8 How to Create Databases & Tables in Sql Server



Invoke-Command -ComputerName 'hqdbt01', 'hqdbsp17'{

Get-Service -Name MSSQL* |Where {$_.status -eq "Running" -and ($ -ne 'MSSQLFDLauncher')}} | Select-Object -Property PSComputerName, @{label='InstanceName';expression={$_.Name -replace '^.*\$'}}

The output lists the SQL instances of the remote machines. This is because every instance also runs a corresponding service. You can also see the Where clause in which conditions can be specified as per your requirement.

  • Note: We all know that every SQL installation performed on the server registers a windows service so Get-Service cmdlet is the simplest ways to get a list of all the SQL instances on the server(s).

Using a defined IP range

In the following example, the input is a defined IP Address range. The IP address range is to The IP is traversed using a foreach loop. First, each machine is tested for successful connectivity. After that, the IP Address is fed to the System.Net.Dns class to get a hostname for each entry. The SQL Service corresponding to each machine is listed and the ServerName and InstanceName properties of Get-Service object are displayed.











1..255| % {


If (Test-Connection $ip -count 1 -quiet) {

$result = ([System.Net.Dns]::GetHostByAddress($ip)).hostname

Write "$result->host responded"

Invoke-Command -ComputerName $result -ErrorAction SilentlyContinue {

Get-Service -Name MSSQL* |Where {$_.status -eq "Running" -and ($ -ne 'MSSQLFDLauncher')}} | Select-Object -Property PSComputerName, @{label='InstanceName';expression={$_.Name -replace '^.*\$'}}



  • Note:
    1. The GetHostByAddress(IP) is a method that creates an IPHostEntry(Hostname) instance from the specified IPAddress
    2. It took me about 9 minutes to traverse the 255 machines to list all the SQL instances


SMO stands for SQL Management Objects. It is a set of .NET libraries specifically designed for working with SQL Server. These libraries are stored in .NET DLLs and are loaded with classes during Import-Module. From these classes you can create objects that retrieve SQL Server properties. For example, there are classes for databases, tables, columns and much more.






Import-Module -Name SQLServer

'hqdbt01','hqdbt01\sql2017' |ForEach-Object {

new-object ('Microsoft.SqlServer.Management.Smo.Server') $_ |SELECT @{label='ServerName';expression={$_.ComputerNamePhysicalNetBIOS}}, @{label='InstanceName';expression={$_.Name}} , Edition



In this article, we discussed various methods to access the basic information of all the SQL instances. The auto-discover option allows us to keep an inventory of SQL servers, and it’s helpful for many events. I hope you like this article. Feel free to leave comments below.

(Video) Introducing Data Discovery and Classification with SQL Server 2019

  • Author
  • Recent Posts

Six methods to automatically Discover SQL Server instances (10)

I’m a Database technologist having 11+ years of rich, hands-on experience on Database technologies. I am Microsoft Certified Professional and backed with a Degree in Master of Computer Application.

My specialty lies in designing & implementing High availability solutions and cross-platform DB Migration. The technologies currently working on are SQL Server, PowerShell, Oracle and MongoDB.

View all posts by Prashanth Jayaram

Six methods to automatically Discover SQL Server instances (11)

Latest posts by Prashanth Jayaram (see all)

  • Stairway to SQL essentials - April 7, 2021
  • A quick overview of database audit in SQL - January 28, 2021
  • How to set up Azure Data Sync between Azure SQL databases and on-premises SQL Server - January 20, 2021
(Video) SQL Server Statistics Basics – Part 1 (by Amit Bansal)

Related posts:

  1. Inventory and document your SQL Server estate using PowerShell
  2. Configure SQL Server Always On Availability Groups using Windows PowerShell scripts
  3. What is causing database slowdowns?
  4. Backup testing with PowerShell – Part 1: The test
  5. Top SQL Server Books


How do I find all the instances of SQL Server? ›

To list all the SQL instances, navigate to the root directory and run the Get-Childitem to get the list. Note: The path SQLSERVER:\SQL\<ServerName> has all the installed SQL instances of the listed server.

How many ways we can connect to an instance of SQL Server explain? ›

In SQL Server there are two types of instances. First is a default instance and the second is a named instance. To connect to the default instance of Database Engine, or named instance that is the only instance installed on the machine, the TCP port 1433 is the only port that you need to specify.

What is the best way to find the SQL services in a server via PowerShell? ›

To monitor the SQL Server Services I will use the Get-WmiObject cmdlet and win32_service class in PowerShell. The Get-WmiObject cmdlet gets instances of Windows Management Instrumentation (WMI) classes or information about the available classes.

What are SQL Server instances? ›

Microsoft SQL Server (MS-SQL) has a feature called named instances. This feature lets you run multiple databases on the same host (or clustered hosts) with separate settings. Each database instance runs on its own port.

How many instances are available in SQL? ›

You can install as many as 50 SQL Server instances on a Windows Server; obviously, we do not recommend this. In a Windows failover cluster, the maximum number of SQL Server instances is reduced by half if you're using shared cluster drives. Only one of the SQL Server instances on a server can be the default instance.

How many instance are there? ›

There are two types of instances : The central instance of the SAP system is distinguish by the fact that it offers services that no other instance of the system offers.

What are the 4 main databases installed with a SQL Server instance? ›

Summary. SQL Server installs five system databases with every server instance: Resource (SQL Server 2005 and higher only), master, tempdb, model, and msdb.

How many instances can a database have? ›

You can have multiple instances on a server. An instance can have 1 or more databases. I'm actually not sure if there is a hard limit (999 comes to mind) on the number of databases per instance, but you will run into resource, memory and disk space issues long before you reach it.

What are the ways to connect EC2 instance? ›

Open the Amazon EC2 console at .
  1. In the navigation pane, choose Instances.
  2. Select the instance and choose Connect.
  3. Choose EC2 Instance Connect.
  4. Verify the user name and choose Connect to open a terminal window.

What are the 4 SQL Server services? ›

Types of services in SQL Server
  • Database Engine.
  • Analysis Service.
  • Reporting Service.
  • Compact Edition.
  • Integration Services.
5 Mar 2014

How do I find SQL queries in SQL Server? ›

How to Check SQL Server Query History
  1. Queries are saved in the cache via system representations (sys. dm_exec_query_stats, sys. dm_exec_sql_text, and sys. ...
  2. Using SQL Server Profiler.
  3. Using Extended Events.
  4. Using the Query Store, starting from the 2016 version.
  5. Using SQL Complete (SQL Complete\Execution History) in SSMS.
25 Sept 2020

How do I find SQL Server on Windows? ›

Click Start, point to All Programs, point to Microsoft SQL Server, point to Configuration Tools, and then click SQL Server Configuration Manager.

What are the two instance types in SQL Server? ›

Possible SQL Server instance types: M3 General Purpose – These are basic servers with up to 8 cores and 30GB of memory. M3 instances won't win any awards for speed, but they are cheap. R3 Memory Optimized – These instances ship with up to 32 cores (2 sockets) and 244GB of memory.

How many SQL Server instances create? ›

After creating a Cloud SQL instance, you add databases to it by creating or importing them. Note: By default, you can have up to 100 instances per project.

How set a instance in SQL Server? ›

To create a Microsoft SQL Server Named Instance, follow these steps:
  1. Log in as an administrator.
  2. Run the SQL Server installation files from the SQL server installation media.
  3. Select Installation.
  4. Select New SQL Server standalone installation or add features to an existing installation.
  5. Click OK. ...
  6. Click Next.
13 May 2021

What are the different types of instance? ›

Amazon EC2 Instance Types
  • Mac.
  • T4g.
  • T3.
  • T3a.
  • T2.
  • M6g.
  • M6i.
  • M6a.

How do I check availability of instances? ›

From the Amazon EC2 console:
  1. Open the Amazon EC2 console.
  2. Choose the Region where you want to launch the instance.
  3. Select Instance Types.
  4. For Filter instance types, enter your preferred instance type.
  5. Select your preferred instance type.
  6. Under Networking, review the Availability Zones listed under Availability Zones.
8 Jul 2022

What are instances in database? ›

A database instance is a set of memory structures that manage database files. A database is a set of physical files on disk created by the CREATE DATABASE statement. The instance manages its associated data and serves the users of the database.

What are the five instance categories? ›

The instance types can be broadly classified into five different categories as follows.
  • General Purpose.
  • Compute-Optimized.
  • Memory-Optimized.
  • Storage-Optimized.
  • Accelerated Computing.
8 Mar 2021

What is an example of instance? ›

An instance is a specific example or case of something. One instance of being chased by a growling dog can make a person spend his whole life being afraid of animals.

What is instance very short answer? ›

An instance is a particular example or occurrence of something.

What are the 4 types of database? ›

A relational database management system is one of four common types of systems you can use to manage your business data.
The other three include:
  • hierarchical database systems.
  • network database systems.
  • object-oriented database systems.

What are the 4 components of SQL? ›

The scope of SQL includes data query, data manipulation (insert, update, and delete), data definition (schema creation and modification), and data access control.

What are the 4 main objects that make up a SQL database? ›

While Microsoft Access is made up of seven components, this text will focus on the main objects: tables, forms, queries and reports. Together, these objects allow users to enter, store, analyze and compile data in various ways.

How many SQL instances can you start on a single machine? ›

SQL Server allows only one default instance to be installed on a machine, but with a few simple steps every instance can be made a “default” instance. The main advantage of such a setup is the ability to redirect client connections to a database instance with a simple change in the DNS configuration.

Can you have multiple SQL Server instances? ›

You can install multiple instances of SQL Server, or install SQL Server on a computer where earlier SQL Server versions are already installed. The following SQL Server-related items are compatible with the installation of multiple instances on the same computer: Database Engine. Analysis Services.

Why do we need more than 1 instance? ›

So, multiple instances will allow you to scale each customer at different times and rates and will allow you to develop each solution without affecting each other.

Which is the right method to access the EC2 instance? ›

Set up IAM users

First, allow an IAM user to be able to push their SSH keys up to EC2 Instance Connect. Create a new IAM policy so that you can add it to any other users in your organization. In the IAM console, choose Policies, Create Policy. Use ec2-user as the value for ec2:osuser with Amazon Linux 2.

How do I connect to an EC2 instance from SQL server? ›

  1. Connect to your instance using Remote Desktop Protocol (RDP) as a local administrator.
  2. Open SSMS. ...
  3. Choose Connect.
  4. In Object Explorer, expand Security.
  5. Open the context (right-click) menu for Logins, and then select New Login.
  6. For Login name, select Windows authentication.
31 Aug 2022

How do I connect to an EC2 instance from MySQL? ›

  1. Open MySQL Workbench.
  2. Select MySQL New Connection and enter a connection name.
  3. Choose the Connection Method, and select Standard TCP/IP over SSH.
  4. For SSH Hostname, enter the public IP address of your EC2 instance.
  5. For SSH Username, enter the default SSH user name to connect to your EC2 instance.
25 May 2022

What are the 3 types of functions in SQL Server? ›

There are three types of user-defined functions in SQL Server: Scalar Functions (Returns A Single Value) Inline Table Valued Functions (Contains a single TSQL statement and returns a Table Set) Multi-Statement Table Valued Functions (Contains multiple TSQL statements and returns Table Set)

What are the 3 major SQL operations? ›

Some of The Most Important SQL Commands
  • SELECT - extracts data from a database.
  • UPDATE - updates data in a database.
  • DELETE - deletes data from a database.
  • INSERT INTO - inserts new data into a database.
  • CREATE DATABASE - creates a new database.
  • ALTER DATABASE - modifies a database.
  • CREATE TABLE - creates a new table.

What are the 5 categories of sub languages of SQL? ›

SQL includes 5 types of sub-languages that are DDL, DML, DQL/DRL, DCL, and TCL.

What is lookup command in SQL? ›

Lookups are an intuitive table linking syntax provided to simplify data integration and SQL queries. They represent foreign key relationships between tables, and once established, can be used to "expose" columns from the "target" of the lookup in the source table or query.

What are the types of SQL queries? ›

Types of SQL Statements
  • Data Definition Language (DDL) Statements.
  • Data Manipulation Language (DML) Statements.
  • Transaction Control Statements.
  • Session Control Statements.
  • System Control Statement.
  • Embedded SQL Statements.

What are different types of SQL commands? ›

There are 3 main types of commands. DDL (Data Definition Language) commands, DML (Data Manipulation Language) commands, and DCL (Data Control Language) commands.

How do I find the default SQL Server instance? ›

You can check whether the instance you installed is a default instance from SQL server configuration manager or windows service. If the SQL instance name is shown as MSSQLSERVER, this is default SQL server instance.

What is the default instance name for SQL Server? ›

The default instance name is MSSQLSERVER. For example, assume that an application program in Java or . NET sends data to a database in the default instance. It does not require the client to specify the name of the instance to make the connection.

How do I find my SQL server database? ›

Use SQL Server Management Studio

In Object Explorer, connect to an instance of the SQL Server Database Engine, and then expand that instance. To see a list of all databases on the instance, expand Databases.

What is server instance name? ›

Server name is your machine name; instance name is the same with server name when sql server is installed as a default instance and has got "computer_name\instance_name" name when sql has been installed as a named instance.

What is the difference between SQL Server and instance? ›

The main difference between instance and database in SQL server is that an instance is a copy of the sqlservr.exe executable that runs as an operating system service while a database is a systematic collection of data that stores data in tables. SQL Server is an RDBMS developed by Microsoft.

What is the difference between instance and server? ›

In very simple words, a server running our application is called an instance. Think of one server as one instance. An Instance is a virtual machine which runs our workloads in the cloud. Often the term VM Virtual Machine & Instance are used interchangeably.

How do you create multiple instances of SQL Server? ›

To create SQL database instances, follow these steps: Run the SQL Server installation wizard.
  1. Administering Connections 6.5 CR1. ...
  2. Installing. ...
  3. Pre-installation tasks. ...
  4. Creating databases. ...
  5. Creating SQL Server databases. ...
  6. Creating multiple SQL database instances.

How many instances can be created? ›

Solution: The answer to the question of how many instances of an abstract class can be created is zero. That is, we cannot create an instance of an abstract class as it does not have any complete implementation.

How do I start SQL Server automatically? ›

In SQL Server Configuration Manager, expand Services, and then click SQL Server. In the details pane, right-click the name of the instance you want to start automatically, and then click Properties. In the SQL Server <instancename> Properties dialog box, set Start Mode to Automatic.

How do I start an SQL instance? ›

Start, stop, or restart an instance of the SQL Server Agent
  1. In Object Explorer, connect to the instance of the Database Engine, right-click SQL Server Agent, and then select Start, Stop, or Restart.
  2. If the User Account Control dialog box appears, select Yes.
  3. When prompted if you want to act, select Yes.
14 Sept 2022

How do I create an instance of a database? ›

To create a DB instance

In the navigation pane, choose Databases. Choose Create database. In Choose a database creation method, select Standard Create. In Engine options, choose the engine type: MariaDB, Microsoft SQL Server, MySQL, Oracle, or PostgreSQL.

How do I delete all SQL Server instances? ›

  1. To begin the removal process navigate to Settings from the Start menu and then choose Apps.
  2. Search for sql in the search box.
  3. Select Microsoft SQL Server (Version) (Bit). ...
  4. Select Uninstall.
  5. Select Remove on the SQL Server dialog pop-up to launch the Microsoft SQL Server installation wizard.
11 Mar 2022

How do I find the instance of SQL IP address? ›

How to find your database IP address and SQL port
  1. Hold the windows key on your keyboard and then press the "R" key to open up the "Run" box.
  2. Type "cmd" into the text box and then click "OK".
  3. In the black box that comes up type "ipconfig".
4 Dec 2020

How do I find the instance name of a SQL Server port? ›

Check SQL Server Port Number
  1. Open SQL Server Configuration Manager from the start menu. ...
  2. Go to Network Configuration, click the SQL instance for which you want to check SQL port.
  3. It opens the protocols list. ...
  4. Click on IP Addresses and scroll down to IPAll group.
17 Jun 2019

What Is Named instance and default instance in SQL Server? ›

A named instance is identified by the network name of the computer plus the instance name that you specify during installation. The client must specify both the server name and the instance name when connecting. By default, SQL Server installs in the default instance unless you specify an instance name.

Why does SQL Server have multiple instances? ›

A second area in which multiple instances provide great benefit is server consolidation. Instead of having 10 machines to run 10 applications, a company can run all applications on one machine. With separate SQL Server instances, each application can still have its own administrator and its own users and permissions.

Can you rename a SQL instance? ›

You can change the name of SQL Server instance on secondary server in log shipping if the primary server is permanently lost. If you have linked server configurations then it will be affected by the computer renaming operation. Use sp_addlinkedserveror sp_setnetname to update computer name references.

Can you ping SQL Server instance? ›

You can use the following steps to test TCP connectivity by using the ping tool. On the Start menu, select Run. In the Run window, type cmd and select OK. In the Command Prompt window, type ping and the IP address of the computer that's running SQL Server.

How do I find the instance ID? ›

In the navigation pane, select Instances. The Instances page opens. Click the instance that you want the ID for. The instance details page opens and displays the ID and IP address.

How do I ping an instance? ›

You have to go to your security group of the EC2 instance you created. Then go to inbound rules and click Edit. Then add a Custom ICMP rule with Protocol as Echo Request. For source, add Anywhere so that you can ping from any machine you want.


1. IP Address And Port Number Of MS-SQL Server | Tech Tutorial
(Ketul Patel)
2. The Smart Way to Troubleshoot SQL Server Cluster and Availability Group Outages by Edwin M Sarmiento
3. SQL Server DBA Tutorial 188-How to find SQL Server Port Number using SQL Server Management Studio
4. Automate your SQL Server installs and configurations using Powershell Desired State
(Virtualization Virtual Group)
5. find sql port number | sql port issues | change port of sql server | dynamic port in sql
(Training2SQL MSBI)
6. How to Install & Configure SQL Server 2019 Fail over Cluster Step By Step
(Labs Hands On)

Top Articles

Latest Posts

Article information

Author: Carlyn Walter

Last Updated: 12/27/2022

Views: 5522

Rating: 5 / 5 (50 voted)

Reviews: 89% of readers found this page helpful

Author information

Name: Carlyn Walter

Birthday: 1996-01-03

Address: Suite 452 40815 Denyse Extensions, Sengermouth, OR 42374

Phone: +8501809515404

Job: Manufacturing Technician

Hobby: Table tennis, Archery, Vacation, Metal detecting, Yo-yoing, Crocheting, Creative writing

Introduction: My name is Carlyn Walter, I am a lively, glamorous, healthy, clean, powerful, calm, combative person who loves writing and wants to share my knowledge and understanding with you.